/* ===================================
   TaxResolving - Servicios Fiscales Premium
   Build: TR7K9X2M4L | Instance: tr3h8k9m
   Fingerprint: 9f4e2a7c | Rev: 2026.01.22
   =================================== */
:root {
    --primary-blue: #1E40AF;
    --primary-blue-dark: #1E3A8A;
    --primary-blue-light: #3B82F6;
    --accent-blue: #BFDBFE;
    --soft-blue: #EFF6FF;
    --pure-white: #ffffff;
    --off-white: #F8FAFC;
    --light-gray: #DBEAFE;
    --gray: #64748b;
    --dark-gray: #334155;
    --text-dark: #0F172A;
    --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-display: 'Space Grotesk', sans-serif;
    --spacing-xs: 0.5rem;
    --spacing-sm: 1rem;
    --spacing-md: 1.5rem;
    --spacing-lg: 2rem;
    --spacing-xl: 3rem;
    --spacing-2xl: 4rem;
    --spacing-3xl: 6rem;
    --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 8px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04);
    --shadow-lg: 0 12px 20px -4px rgba(0, 0, 0, 0.09), 0 4px 8px -2px rgba(0, 0, 0, 0.03);
    --shadow-xl: 0 24px 30px -6px rgba(0, 0, 0, 0.09), 0 12px 14px -6px rgba(0, 0, 0, 0.02);
    --radius-sm: 0.375rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --radius-xl: 1rem;
    --radius-full: 9999px;
    --transition-fast: 140ms ease;
    --transition-base: 240ms ease;
    --transition-slow: 340ms ease;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { font-family: var(--font-primary); color: var(--text-dark); background-color: var(--pure-white); line-height: 1.6; overflow-x: hidden; }

.wrap-tr7k9x2 { max-width: 1280px; margin: 0 auto; padding: 0 var(--spacing-md); }
@media (min-width: 768px) { .wrap-tr7k9x2 { padding: 0 var(--spacing-lg); } }

.topbar-tr7k9x2 { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; background-color: rgba(255, 255, 255, 0.97); backdrop-filter: blur(14px); box-shadow: var(--shadow-sm); transition: all var(--transition-base); }
.topbar-tr7k9x2.scrolled { box-shadow: var(--shadow-md); }
.topbar-wrap-tr7k9x2 { display: flex; justify-content: space-between; align-items: center; padding-top: var(--spacing-sm); padding-bottom: var(--spacing-sm); }
.brand-tr7k9x2 { display: flex; align-items: center; gap: 0.5rem; font-family: var(--font-display); font-size: 1.5rem; font-weight: 700; color: var(--primary-blue); text-decoration: none; }
.brand-tr7k9x2 i { font-size: 1.75rem; }
.mobile-toggle-tr7k9x2 { display: none; flex-direction: column; gap: 0.25rem; background: none; border: none; cursor: pointer; padding: 0.5rem; }
.mobile-toggle-tr7k9x2 span { display: block; width: 1.5rem; height: 2px; background-color: var(--text-dark); transition: all var(--transition-base); }
.mobile-toggle-tr7k9x2.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.mobile-toggle-tr7k9x2.active span:nth-child(2) { opacity: 0; }
.mobile-toggle-tr7k9x2.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }
.menu-tr7k9x2 { display: flex; align-items: center; gap: var(--spacing-lg); }
.navitem-tr7k9x2 { color: var(--dark-gray); text-decoration: none; font-weight: 500; transition: color var(--transition-fast); position: relative; }
.navitem-tr7k9x2::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 2px; background-color: var(--primary-blue); transition: width var(--transition-base); }
.navitem-tr7k9x2:hover { color: var(--primary-blue); }
.navitem-tr7k9x2:hover::after { width: 100%; }
@media (max-width: 768px) {
    .mobile-toggle-tr7k9x2 { display: flex; }
    .menu-tr7k9x2 { position: fixed; top: 0; right: -100%; width: 280px; height: 100vh; background-color: var(--pure-white); flex-direction: column; justify-content: center; padding: var(--spacing-lg); box-shadow: var(--shadow-xl); transition: right var(--transition-base); z-index: 999; }
    .menu-tr7k9x2.active { right: 0; }
}

.action-tr7k9x2 { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.75rem 1.5rem; font-weight: 600; font-size: 0.95rem; text-decoration: none; border-radius: var(--radius-lg); transition: all var(--transition-base); cursor: pointer; border: none; }
.action-prime-tr7k9x2 { background-color: var(--primary-blue); color: white; }
.action-prime-tr7k9x2:hover { background-color: var(--primary-blue-dark); transform: translateY(-2px); box-shadow: var(--shadow-md); }
.action-line-tr7k9x2 { background-color: transparent; color: var(--primary-blue); border: 2px solid var(--primary-blue); }
.action-line-tr7k9x2:hover { background-color: var(--soft-blue); }
.action-lg-tr7k9x2 { padding: 1rem 2rem; font-size: 1.05rem; }
.action-full-tr7k9x2 { width: 100%; justify-content: center; }
.action-tr7k9x2:disabled { opacity: 0.5; cursor: not-allowed; transform: none !important; }

.banner-tr7k9x2 { position: relative; min-height: 100vh; display: flex; align-items: center; padding-top: 80px; overflow: hidden; }
.banner-bg-tr7k9x2 { position: absolute; inset: 0; background: linear-gradient(135deg, var(--soft-blue) 0%, var(--pure-white) 50%, var(--light-gray) 100%); z-index: -1; }
.banner-bg-tr7k9x2::before { content: ''; position: absolute; top: -50%; right: -20%; width: 80%; height: 150%; background: radial-gradient(circle, var(--accent-blue) 0%, transparent 70%); opacity: 0.4; }
.banner-wrap-tr7k9x2 { display: grid; grid-template-columns: 1fr; gap: var(--spacing-xl); align-items: center; padding-top: var(--spacing-2xl); padding-bottom: var(--spacing-2xl); }
@media (min-width: 992px) { .banner-wrap-tr7k9x2 { grid-template-columns: 1fr 1fr; } }
.banner-txt-tr7k9x2 { max-width: 600px; }
.banner-title-tr7k9x2 { font-family: var(--font-display); font-size: clamp(2.5rem, 5vw, 4rem); font-weight: 700; line-height: 1.1; color: var(--text-dark); margin-bottom: var(--spacing-md); }
.banner-sub-tr7k9x2 { font-size: 1.15rem; color: var(--gray); margin-bottom: var(--spacing-lg); line-height: 1.7; }
.banner-btns-tr7k9x2 { display: flex; flex-wrap: wrap; gap: var(--spacing-sm); }
.banner-img-tr7k9x2 { position: relative; display: none; }
@media (min-width: 992px) { .banner-img-tr7k9x2 { display: block; height: 400px; } }
.float-card-tr7k9x2 { position: absolute; display: flex; align-items: center; gap: 0.75rem; padding: 1rem 1.25rem; background-color: var(--pure-white); border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); animation: float-tr7k9x2 3s ease-in-out infinite; }
.float-card-tr7k9x2 i { font-size: 1.5rem; color: var(--primary-blue); }
.float-card-tr7k9x2 span { font-weight: 600; color: var(--text-dark); }
.card-1-tr7k9x2 { top: 20%; left: 10%; animation-delay: 0s; }
.card-2-tr7k9x2 { top: 50%; right: 10%; animation-delay: 1s; }
.card-3-tr7k9x2 { bottom: 15%; left: 20%; animation-delay: 2s; }
@keyframes float-tr7k9x2 { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }

.head-tr7k9x2 { text-align: center; margin-bottom: var(--spacing-2xl); }
.title-tr7k9x2 { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 2.75rem); font-weight: 700; color: var(--text-dark); margin-bottom: var(--spacing-sm); }
.subtitle-tr7k9x2 { font-size: 1.1rem; color: var(--gray); max-width: 600px; margin: 0 auto; }

.offers-tr7k9x2 { padding: var(--spacing-3xl) 0; background-color: var(--pure-white); }
.offers-grid-tr7k9x2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--spacing-lg); }
.offer-card-tr7k9x2 { background-color: var(--pure-white); border: 1px solid var(--light-gray); border-radius: var(--radius-xl); padding: var(--spacing-lg); transition: all var(--transition-base); }
.offer-card-tr7k9x2:hover { transform: translateY(-5px); box-shadow: var(--shadow-lg); border-color: var(--primary-blue-light); }
.offer-icon-tr7k9x2 { width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; background-color: var(--soft-blue); border-radius: var(--radius-lg); margin-bottom: var(--spacing-md); }
.offer-icon-tr7k9x2 i { font-size: 1.5rem; color: var(--primary-blue); }
.offer-title-tr7k9x2 { font-size: 1.25rem; font-weight: 700; color: var(--text-dark); margin-bottom: var(--spacing-xs); }
.offer-desc-tr7k9x2 { color: var(--gray); font-size: 0.95rem; margin-bottom: var(--spacing-md); }
.offer-features-tr7k9x2 { list-style: none; }
.offer-features-tr7k9x2 li { display: flex; align-items: center; gap: 0.5rem; padding: 0.35rem 0; font-size: 0.9rem; color: var(--dark-gray); }
.offer-features-tr7k9x2 i { color: var(--primary-blue); font-size: 0.8rem; }

.why-tr7k9x2 { padding: var(--spacing-3xl) 0; background-color: var(--soft-blue); }
.why-grid-tr7k9x2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--spacing-lg); }
.why-card-tr7k9x2 { text-align: center; padding: var(--spacing-lg); }
.why-icon-tr7k9x2 { width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; background-color: var(--pure-white); border-radius: 50%; margin: 0 auto var(--spacing-md); box-shadow: var(--shadow-md); }
.why-icon-tr7k9x2 i { font-size: 2rem; color: var(--primary-blue); }
.why-title-tr7k9x2 { font-size: 1.25rem; font-weight: 700; color: var(--text-dark); margin-bottom: var(--spacing-sm); }
.why-desc-tr7k9x2 { color: var(--gray); font-size: 0.95rem; }

.reviews-tr7k9x2 { padding: var(--spacing-3xl) 0; background-color: var(--pure-white); }
.reviews-grid-tr7k9x2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: var(--spacing-lg); }
.review-card-tr7k9x2 { background-color: var(--pure-white); border: 1px solid var(--light-gray); border-radius: var(--radius-xl); padding: var(--spacing-lg); transition: all var(--transition-base); }
.review-card-tr7k9x2:hover { box-shadow: var(--shadow-lg); }
.review-stars-tr7k9x2 { display: flex; gap: 0.25rem; margin-bottom: var(--spacing-md); }
.review-stars-tr7k9x2 i { color: #f59e0b; font-size: 1rem; }
.review-text-tr7k9x2 { color: var(--dark-gray); font-size: 0.95rem; line-height: 1.7; margin-bottom: var(--spacing-md); font-style: italic; }
.review-author-tr7k9x2 { display: flex; align-items: center; gap: var(--spacing-sm); }
.author-pic-tr7k9x2 { width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-light)); border-radius: 50%; color: white; font-weight: 700; font-size: 0.9rem; }
.author-name-tr7k9x2 { font-weight: 600; color: var(--text-dark); font-size: 0.95rem; }
.author-role-tr7k9x2 { color: var(--gray); font-size: 0.85rem; }

.calc-tr7k9x2 { padding: var(--spacing-3xl) 0; background-color: var(--soft-blue); }
.calc-wrap-tr7k9x2 { display: grid; grid-template-columns: 1fr; gap: var(--spacing-xl); }
@media (min-width: 992px) { .calc-wrap-tr7k9x2 { grid-template-columns: 1.2fr 0.8fr; } }
.calc-items-tr7k9x2 { background-color: var(--pure-white); border-radius: var(--radius-xl); padding: var(--spacing-lg); box-shadow: var(--shadow-md); }
.calc-head-tr7k9x2 { font-size: 1.1rem; font-weight: 600; color: var(--text-dark); margin-bottom: var(--spacing-md); }
.calc-option-tr7k9x2 { border: 1px solid var(--light-gray); border-radius: var(--radius-lg); margin-bottom: var(--spacing-sm); transition: all var(--transition-base); }
.calc-option-tr7k9x2:hover { border-color: var(--primary-blue-light); }
.calc-option-tr7k9x2.selected { border-color: var(--primary-blue); background-color: var(--soft-blue); }
.calc-option-head-tr7k9x2 { display: flex; justify-content: space-between; align-items: center; padding: var(--spacing-sm) var(--spacing-md); }
.calc-check-tr7k9x2 { display: flex; align-items: center; gap: var(--spacing-sm); cursor: pointer; flex: 1; }
.calc-check-tr7k9x2 input { display: none; }
.check-custom-tr7k9x2 { width: 22px; height: 22px; border: 2px solid var(--gray); border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; transition: all var(--transition-fast); flex-shrink: 0; }
.calc-check-tr7k9x2 input:checked + .check-custom-tr7k9x2 { background-color: var(--primary-blue); border-color: var(--primary-blue); }
.calc-check-tr7k9x2 input:checked + .check-custom-tr7k9x2::after { content: '\2713'; color: white; font-size: 0.85rem; font-weight: bold; }
.offer-info-tr7k9x2 { display: flex; align-items: center; gap: var(--spacing-sm); }
.offer-info-tr7k9x2 i { font-size: 1.25rem; color: var(--primary-blue); }
.offer-info-tr7k9x2 h4 { font-size: 0.95rem; font-weight: 600; color: var(--text-dark); }
.offer-info-tr7k9x2 p { font-size: 0.8rem; color: var(--gray); }
.calc-price-tr7k9x2 { font-weight: 700; color: var(--primary-blue); font-size: 1rem; }
.calc-summary-tr7k9x2 { position: sticky; top: 100px; }
.sum-card-tr7k9x2 { background-color: var(--pure-white); border-radius: var(--radius-xl); padding: var(--spacing-lg); box-shadow: var(--shadow-lg); }
.sum-heading-tr7k9x2 { font-size: 1.25rem; font-weight: 700; color: var(--text-dark); margin-bottom: var(--spacing-md); }
.sum-services-tr7k9x2 { min-height: 100px; }
.sum-empty-tr7k9x2 { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: var(--spacing-md); color: var(--gray); }
.sum-empty-tr7k9x2 i { font-size: 2rem; margin-bottom: var(--spacing-xs); opacity: 0.5; }
.sum-item-tr7k9x2 { display: flex; justify-content: space-between; padding: 0.5rem 0; font-size: 0.95rem; }
.sum-item-tr7k9x2 .name { color: var(--dark-gray); }
.sum-item-tr7k9x2 .price { font-weight: 600; color: var(--text-dark); }
.sum-divider-tr7k9x2 { height: 1px; background-color: var(--light-gray); margin: var(--spacing-md) 0; }
.sum-total-tr7k9x2 { display: flex; justify-content: space-between; align-items: center; font-size: 1.1rem; font-weight: 700; color: var(--text-dark); margin-bottom: var(--spacing-md); }
.total-tr7k9x2 { color: var(--primary-blue); font-size: 1.5rem; }
.sum-discount-tr7k9x2 { display: flex; align-items: center; gap: var(--spacing-sm); padding: var(--spacing-sm); background-color: var(--soft-blue); border-radius: var(--radius-md); margin-bottom: var(--spacing-md); }
.sum-discount-tr7k9x2 i { color: var(--primary-blue); font-size: 1.25rem; }
.sum-discount-tr7k9x2 strong { display: block; color: var(--primary-blue); font-size: 0.9rem; }
.sum-discount-tr7k9x2 p { font-size: 0.8rem; color: var(--gray); }
.sum-note-tr7k9x2 { display: flex; align-items: center; justify-content: center; gap: 0.5rem; margin-top: var(--spacing-md); font-size: 0.8rem; color: var(--gray); }
.sum-note-tr7k9x2 i { color: var(--primary-blue); }

.reach-tr7k9x2 { padding: var(--spacing-3xl) 0; background-color: var(--pure-white); }
.reach-wrap-tr7k9x2 { display: grid; grid-template-columns: 1fr; gap: var(--spacing-xl); }
@media (min-width: 992px) { .reach-wrap-tr7k9x2 { grid-template-columns: 1fr 1fr; } }
.reach-info-tr7k9x2 { padding: var(--spacing-lg); }
.reach-title-tr7k9x2 { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 2.5rem); font-weight: 700; color: var(--text-dark); margin-bottom: var(--spacing-md); }
.reach-text-tr7k9x2 { color: var(--gray); font-size: 1.05rem; line-height: 1.7; margin-bottom: var(--spacing-xl); }
.reach-ways-tr7k9x2 { display: flex; flex-direction: column; gap: var(--spacing-md); }
.reach-item-tr7k9x2 { display: flex; align-items: flex-start; gap: var(--spacing-md); }
.reach-icon-tr7k9x2 { width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; background-color: var(--soft-blue); border-radius: var(--radius-lg); flex-shrink: 0; }
.reach-icon-tr7k9x2 i { font-size: 1.25rem; color: var(--primary-blue); }
.reach-item-tr7k9x2 h4 { font-weight: 600; color: var(--text-dark); margin-bottom: 0.25rem; }
.reach-item-tr7k9x2 p, .reach-item-tr7k9x2 a { color: var(--gray); font-size: 0.95rem; text-decoration: none; }
.reach-item-tr7k9x2 a:hover { color: var(--primary-blue); }
.reach-form-tr7k9x2 { background-color: var(--pure-white); border: 1px solid var(--light-gray); border-radius: var(--radius-xl); padding: var(--spacing-lg); box-shadow: var(--shadow-md); }
.form-tr7k9x2 { display: flex; flex-direction: column; gap: var(--spacing-md); }
.field-tr7k9x2 { display: flex; flex-direction: column; gap: 0.5rem; }
.field-tr7k9x2 label { font-weight: 500; color: var(--text-dark); font-size: 0.9rem; }
.field-tr7k9x2 input, .field-tr7k9x2 select, .field-tr7k9x2 textarea { padding: 0.875rem 1rem; border: 1px solid var(--light-gray); border-radius: var(--radius-md); font-family: var(--font-primary); font-size: 0.95rem; transition: all var(--transition-fast); background-color: var(--pure-white); }
.field-tr7k9x2 input:focus, .field-tr7k9x2 select:focus, .field-tr7k9x2 textarea:focus { outline: none; border-color: var(--primary-blue); box-shadow: 0 0 0 3px var(--accent-blue); }
.field-tr7k9x2 textarea { min-height: 120px; resize: vertical; }
.form-status-tr7k9x2 { padding: var(--spacing-sm); border-radius: var(--radius-md); text-align: center; display: none; }
.form-status-tr7k9x2.success { display: block; background-color: var(--soft-blue); color: var(--primary-blue); }
.form-status-tr7k9x2.error { display: block; background-color: #fef2f2; color: #dc2626; }

.bottom-tr7k9x2 { background-color: var(--text-dark); color: var(--pure-white); padding: var(--spacing-2xl) 0 var(--spacing-lg); }
.bottom-wrap-tr7k9x2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--spacing-xl); margin-bottom: var(--spacing-xl); }
.bottom-brand-tr7k9x2 { display: flex; align-items: center; gap: 0.5rem; font-family: var(--font-display); font-size: 1.5rem; font-weight: 700; color: var(--pure-white); margin-bottom: var(--spacing-sm); }
.bottom-brand-tr7k9x2 i { color: var(--primary-blue-light); }
.bottom-desc-tr7k9x2 { color: rgba(255, 255, 255, 0.7); font-size: 0.95rem; line-height: 1.6; }
.bottom-head-tr7k9x2 { font-weight: 600; margin-bottom: var(--spacing-md); color: var(--pure-white); }
.bottom-links-tr7k9x2 { list-style: none; }
.bottom-links-tr7k9x2 li { margin-bottom: 0.5rem; }
.bottom-links-tr7k9x2 a { color: rgba(255, 255, 255, 0.7); text-decoration: none; font-size: 0.95rem; transition: color var(--transition-fast); }
.bottom-links-tr7k9x2 a:hover { color: var(--primary-blue-light); }
.bottom-socials-tr7k9x2 { display: flex; gap: var(--spacing-sm); margin-top: var(--spacing-md); }
.bottom-socials-tr7k9x2 a { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background-color: rgba(255, 255, 255, 0.1); border-radius: 50%; color: var(--pure-white); text-decoration: none; transition: all var(--transition-base); }
.bottom-socials-tr7k9x2 a:hover { background-color: var(--primary-blue); transform: translateY(-3px); }
.bottom-line-tr7k9x2 { height: 1px; background-color: rgba(255, 255, 255, 0.1); margin-bottom: var(--spacing-lg); }
.bottom-copy-tr7k9x2 { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--spacing-sm); font-size: 0.9rem; color: rgba(255, 255, 255, 0.6); }
.bottom-legal-tr7k9x2 { display: flex; flex-wrap: wrap; gap: var(--spacing-md); }
.bottom-legal-tr7k9x2 a { color: rgba(255, 255, 255, 0.6); text-decoration: none; transition: color var(--transition-fast); }
.bottom-legal-tr7k9x2 a:hover { color: var(--primary-blue-light); }

.fade-up-tr7k9x2 { opacity: 0; transform: translateY(30px); transition: all 0.6s ease-out; }
.fade-up-tr7k9x2.visible { opacity: 1; transform: translateY(0); }
.fade-tr7k9x2 { opacity: 0; transition: opacity 0.6s ease-out; }
.fade-tr7k9x2.visible { opacity: 1; }

.checkout-page-tr7k9x2 { min-height: 100vh; background-color: var(--soft-blue); padding-top: 100px; }
.checkout-container-tr7k9x2 { max-width: 600px; margin: 0 auto; padding: var(--spacing-lg); }
.checkout-card-tr7k9x2 { background-color: var(--pure-white); border-radius: var(--radius-xl); padding: var(--spacing-xl); box-shadow: var(--shadow-lg); }
.checkout-header-tr7k9x2 { text-align: center; margin-bottom: var(--spacing-xl); }
.checkout-header-tr7k9x2 h1 { font-family: var(--font-display); font-size: 1.75rem; color: var(--text-dark); margin-bottom: var(--spacing-xs); }
.checkout-header-tr7k9x2 p { color: var(--gray); }
.order-summary-tr7k9x2 { background-color: var(--soft-blue); border-radius: var(--radius-lg); padding: var(--spacing-md); margin-bottom: var(--spacing-xl); }
.order-summary-tr7k9x2 h3 { font-size: 1rem; color: var(--text-dark); margin-bottom: var(--spacing-md); }
.order-items-tr7k9x2 { display: flex; flex-direction: column; gap: 0.5rem; }
.order-item-tr7k9x2 { display: flex; justify-content: space-between; font-size: 0.95rem; }
.order-item-tr7k9x2 .name { color: var(--dark-gray); }
.order-item-tr7k9x2 .price { font-weight: 600; color: var(--text-dark); }
.order-divider-tr7k9x2 { height: 1px; background-color: var(--light-gray); margin: var(--spacing-sm) 0; }
.order-total-tr7k9x2 { display: flex; justify-content: space-between; font-weight: 700; font-size: 1.1rem; color: var(--text-dark); }
.order-total-tr7k9x2 .price { color: var(--primary-blue); }
.order-discount-tr7k9x2 { display: flex; align-items: center; gap: 0.5rem; margin-top: var(--spacing-sm); padding: 0.5rem; background-color: var(--pure-white); border-radius: var(--radius-sm); font-size: 0.85rem; color: var(--primary-blue); }
.payment-section-tr7k9x2 { margin-bottom: var(--spacing-lg); }
.payment-section-tr7k9x2 h3 { font-size: 1rem; color: var(--text-dark); margin-bottom: var(--spacing-md); }
#payment-element { margin-bottom: var(--spacing-md); }
#payment-message { color: #dc2626; font-size: 0.9rem; text-align: center; margin-top: var(--spacing-sm); }
.checkout-btn-tr7k9x2 { width: 100%; padding: 1rem; font-size: 1.05rem; }
.checkout-btn-tr7k9x2:disabled { opacity: 0.7; }
.checkout-spinner-tr7k9x2 { display: inline-block; width: 20px; height: 20px; border: 2px solid rgba(255, 255, 255, 0.3); border-radius: 50%; border-top-color: white; animation: spin-tr7k9x2 1s linear infinite; margin-right: 0.5rem; }
@keyframes spin-tr7k9x2 { to { transform: rotate(360deg); } }
.back-link-tr7k9x2 { display: block; text-align: center; margin-top: var(--spacing-md); color: var(--gray); text-decoration: none; font-size: 0.95rem; }
.back-link-tr7k9x2:hover { color: var(--primary-blue); }

.success-page-tr7k9x2 { min-height: 100vh; display: flex; align-items: center; justify-content: center; background-color: var(--soft-blue); padding: var(--spacing-lg); }
.success-card-tr7k9x2 { background-color: var(--pure-white); border-radius: var(--radius-xl); padding: var(--spacing-2xl); text-align: center; max-width: 500px; box-shadow: var(--shadow-xl); }
.success-icon-tr7k9x2 { width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-light)); border-radius: 50%; margin: 0 auto var(--spacing-lg); }
.success-icon-tr7k9x2 i { font-size: 2.5rem; color: white; }
.success-card-tr7k9x2 h1 { font-family: var(--font-display); font-size: 2rem; color: var(--text-dark); margin-bottom: var(--spacing-sm); }
.success-card-tr7k9x2 p { color: var(--gray); margin-bottom: var(--spacing-lg); line-height: 1.6; }
.success-details-tr7k9x2 { background-color: var(--soft-blue); border-radius: var(--radius-lg); padding: var(--spacing-md); margin-bottom: var(--spacing-lg); text-align: left; }
.success-details-tr7k9x2 h3 { font-size: 0.9rem; color: var(--text-dark); margin-bottom: var(--spacing-sm); }
.success-details-tr7k9x2 p { font-size: 0.9rem; margin-bottom: 0.5rem; }

.legal-page-tr7k9x2 { padding-top: 100px; padding-bottom: var(--spacing-3xl); min-height: 100vh; }
.legal-content-tr7k9x2 { max-width: 800px; margin: 0 auto; padding: 0 var(--spacing-lg); }
.legal-content-tr7k9x2 h1 { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 2.5rem); color: var(--text-dark); margin-bottom: var(--spacing-sm); }
.legal-content-tr7k9x2 .last-updated { color: var(--gray); font-size: 0.95rem; margin-bottom: var(--spacing-xl); }
.legal-content-tr7k9x2 h2 { font-size: 1.5rem; color: var(--text-dark); margin-top: var(--spacing-xl); margin-bottom: var(--spacing-md); }
.legal-content-tr7k9x2 h3 { font-size: 1.2rem; color: var(--text-dark); margin-top: var(--spacing-lg); margin-bottom: var(--spacing-sm); }
.legal-content-tr7k9x2 p { color: var(--dark-gray); line-height: 1.8; margin-bottom: var(--spacing-md); }
.legal-content-tr7k9x2 ul { color: var(--dark-gray); line-height: 1.8; margin-bottom: var(--spacing-md); padding-left: var(--spacing-lg); }
.legal-content-tr7k9x2 li { margin-bottom: 0.5rem; }
.legal-content-tr7k9x2 a { color: var(--primary-blue); text-decoration: none; }
.legal-content-tr7k9x2 a:hover { text-decoration: underline; }
.legal-back-tr7k9x2 { display: inline-flex; align-items: center; gap: 0.5rem; color: var(--primary-blue); text-decoration: none; font-weight: 500; margin-bottom: var(--spacing-xl); }
.legal-back-tr7k9x2:hover { text-decoration: underline; }
