.entry-title,
.entry-paragraph {
    text-align: center;
    margin-top: 8px;
}

.wp-block-woocommerce-checkout{
    max-width: 1200px!important;
    margin: 0 auto!important;
    padding: var(--spacing-lg) var(--spacing-sm)!important;
}

/* Custom Checkout Phone Number Block Styles */
.sublimtheme-checkout-phone-block {
    margin-bottom: var(--spacing-md);
}

.sublimtheme-checkout-phone-block .form-row {
    margin-bottom: var(--spacing-md);
}

.sublimtheme-checkout-phone-block label {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--color-dark);
    margin-bottom: var(--spacing-xs);
}

.sublimtheme-checkout-phone-block input[type="tel"] {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid var(--color-grey);
    border-radius: var(--small-radius);
    font-size: 1rem;
    color: var(--color-dark);
    background-color: var(--color-creamy-whity-blue);
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.sublimtheme-checkout-phone-block input[type="tel"]:focus {
    outline: none;
    border-color: var(--color-dark-blue);
    box-shadow: 0 0 0 3px rgba(174, 139, 140, 0.1);
}

.sublimtheme-checkout-phone-block input[type="tel"]::placeholder {
    color: #999;
}

.sublimtheme-checkout-phone-block .required {
    color: #dc3545;
    margin-left: 0.25rem;
}

/* Editor Preview Styles */
.sublimtheme-checkout-phone-block-editor {
    padding: var(--spacing-md);
    border: 1px dashed var(--color-grey);
    border-radius: var(--small-radius);
    background: #f9f9f9;
}

.sublimtheme-checkout-phone-preview label {
    display: block;
    font-weight: 500;
    margin-bottom: var(--spacing-xs);
    color: var(--color-dark);
}

.is-style-without-price {
    background-color: var(--color-dark-blue)!important;
    color: var(--color-creamy-whity-blue)!important;
    padding: var(--spacing-md) var(--spacing-xl)!important;
    border-radius: var(--small-radius)!important;
    font-weight: 600!important;
    font-size: 1.2rem!important;
    text-transform: uppercase!important;
    letter-spacing: 0.5px!important;
}

.wc-block-checkout__actions .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button .wc-block-components-checkout-place-order-button__text {
    font-size: 1.2rem!important;
    font-weight: 600!important;
    color: var(--color-creamy-whity-blue)!important;
    text-transform: uppercase!important;
    letter-spacing: 0.5px!important;
}

@media (max-width: 768px) {
    .wp-block-woocommerce-checkout{
        width: 100%!important;
        padding: var(--spacing-sm)!important;
    }
}

/* Thank you page */

.woocommerce-thankyou-order-received {
    display: none!important;
}

/* ============================================
   ORDER RECEIVED / THANK YOU PAGE STYLES
   ============================================ */

   .thank-you-page-wrapper {
    min-height: 100vh;
    padding: 3rem 1rem;
}

.thank-you-page-wrapper .container {
    max-width: 1200px;
    margin: 0 auto;
}

/* Thank You Header */
.thank-you-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 2rem;
    background: white;
    border-radius: 1rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.thank-you-icon {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}

.thank-you-icon svg {
    color: #10b981;
}

.thank-you-header h1 {
    font-size: 2rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.5rem;
}

.thank-you-header .woocommerce-notice--success {
    color: #059669;
    font-size: 1.125rem;
    margin: 0;
    padding: 0;
    background: none;
    border: none;
}

.thank-you-header.error h1 {
    color: #dc2626;
}

.thank-you-header.error .woocommerce-notice--error {
    color: #dc2626;
    font-size: 1.125rem;
    margin: 0.5rem 0 1rem;
    padding: 0;
    background: none;
    border: none;
}

/* Order Details Grid */
.order-details-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    .order-details-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .order-details-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Order Info Boxes */
.order-info-box {
    background: white;
    border-radius: 1rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    overflow: hidden;
    transition: transform 0.2s, box-shadow 0.2s;
}

.order-info-box:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.order-box-header {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    padding: 1.25rem 1.5rem;
    border-bottom: 2px solid #e2e8f0;
}

.order-box-header h2 {
    font-size: 1.25rem;
    font-weight: 600;
    color: white;
    margin: 0;
}

.order-box-content {
    padding: 1.5rem;
}

/* Order Overview */
.woocommerce-order-overview {
    list-style: none;
    padding: 0;
    margin: 0;
}

.woocommerce-order-overview li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid #e2e8f0;
}

.woocommerce-order-overview li:last-child {
    border-bottom: none;
}

.woocommerce-order-overview li .label {
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
}

.woocommerce-order-overview li strong {
    color: #0f172a;
    font-weight: 600;
    font-size: 0.9375rem;
}

.woocommerce-order-overview li.total {
    border-top: 2px solid #e2e8f0;
    margin-top: 0.5rem;
    padding-top: 1rem;
}

.woocommerce-order-overview li.total .label,
.woocommerce-order-overview li.total strong {
    font-size: 1.125rem;
    font-weight: 700;
    color: #0f172a;
}

/* Order Items */
.order-items-list {
    margin-bottom: 1.5rem;
}

.order-item-card {
    display: flex;
    gap: 1rem;
    padding: 1rem;
    background: #f8fafc;
    border-radius: 0.75rem;
    margin-bottom: 1rem;
    border: 1px solid #e2e8f0;
    transition: all 0.2s;
}

.order-item-card:last-child {
    margin-bottom: 0;
}

.order-item-card:hover {
    background: #f1f5f9;
    border-color: #cbd5e1;
}

.order-item-image {
    width: 80px;
    height: 80px;
    flex-shrink: 0;
    border-radius: 0.5rem;
    overflow: hidden;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
}

.order-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.order-item-details {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.order-item-name {
    font-size: 1rem;
    font-weight: 600;
    color: #0f172a;
    margin: 0 0 0.5rem 0;
    line-height: 1.4;
}

.order-item-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

.order-item-quantity {
    font-size: 0.875rem;
    color: #64748b;
}

.order-item-quantity strong {
    color: #0f172a;
    font-weight: 600;
}

.order-item-price {
    font-size: 1rem;
    font-weight: 600;
    color: #0f172a;
}

/* Order Totals Summary */
.order-totals-summary {
    border-top: 2px solid #e2e8f0;
    padding-top: 1.5rem;
    margin-top: 1.5rem;
}

.order-total-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
    font-size: 0.9375rem;
}

.order-total-row .total-label {
    color: #64748b;
    font-weight: 500;
}

.order-total-row .total-value {
    color: #0f172a;
    font-weight: 600;
}

.order-total-row.order-total-final {
    border-top: 2px solid #e2e8f0;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    font-size: 1.25rem;
}

.order-total-row.order-total-final .total-label,
.order-total-row.order-total-final .total-value {
    font-weight: 700;
    color: #0f172a;
}

/* Address Boxes */
.order-address {
    font-style: normal;
    line-height: 1.8;
    color: #334155;
    font-size: 0.9375rem;
}

.order-address p {
    margin: 0.5rem 0;
}

.address-phone,
.address-email {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #e2e8f0;
}

.address-phone strong,
.address-email strong {
    color: #0f172a;
    font-weight: 600;
    margin-right: 0.5rem;
}

.address-phone a,
.address-email a {
    color: #2563eb;
    text-decoration: none;
    transition: color 0.2s;
}

.address-phone a:hover,
.address-email a:hover {
    color: #1d4ed8;
    text-decoration: underline;
}

/* Review Section */
.order-review-section {
    margin-top: 3rem;
    margin-bottom: 3rem;
}

.review-box {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    border-radius: 1rem;
    padding: 3rem 2rem;
    text-align: center;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
}

.review-box::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
    animation: pulse 4s ease-in-out infinite;
}

@keyframes pulse {
    0%, 100% {
        opacity: 0.3;
    }
    50% {
        opacity: 0.6;
    }
}

.review-icon {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
    position: relative;
    z-index: 1;
}

.review-icon svg {
    color: #fbbf24;
    filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.1));
}

.review-content {
    position: relative;
    z-index: 1;
}

.review-content h2 {
    font-size: 1.75rem;
    font-weight: 700;
    color: white;
    margin-bottom: 0.75rem;
}

.review-content p {
    font-size: 1.125rem;
    color: #cbd5e1;
    margin-bottom: 1.5rem;
    line-height: 1.6;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.review-button {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 2rem;
    background: white;
    color: #0f172a;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: 0.5rem;
    transition: all 0.3s;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.review-button:hover {
    background: #f1f5f9;
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.review-button svg {
    transition: transform 0.3s;
}

.review-button:hover svg {
    transform: translateX(4px);
}

.review-button span {
    display: inline-block;
}

/* Responsive Design */
@media (max-width: 768px) {
    .thank-you-page-wrapper {
        padding: 1.5rem 1rem;
    }

    .thank-you-header {
        padding: 1.5rem;
    }

    .thank-you-header h1 {
        font-size: 1.5rem;
    }

    .order-details-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .order-box-header {
        padding: 1rem 1.25rem;
    }

    .order-box-header h2 {
        font-size: 1.125rem;
    }

    .order-box-content {
        padding: 1.25rem;
    }

    .order-item-card {
        flex-direction: column;
        padding: 1rem;
    }

    .order-item-image {
        width: 100%;
        height: 200px;
    }

    .order-item-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .review-box {
        padding: 2rem 1.5rem;
    }

    .review-content h2 {
        font-size: 1.5rem;
    }

    .review-content p {
        font-size: 1rem;
    }

    .review-button {
        width: 100%;
        justify-content: center;
        padding: 0.875rem 1.5rem;
    }
}

/* Full width for order items box on larger screens */
@media (min-width: 1024px) {
    .order-items-box {
        grid-column: 1 / -1;
    }
}

/* ============================================
   WOOCOMMERCE ORDER DETAILS & CUSTOMER DETAILS
   ============================================ */

/* Additional WooCommerce Sections Container */
.woocommerce-additional-sections {
    margin-top: 2rem;
}

/* Hide duplicate WooCommerce sections - we display this info in our custom boxes */
.woocommerce-order-details,
.woocommerce-customer-details {
    display: none !important;
}

.woocommerce-order-details:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.woocommerce-order-details__title {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    padding: 1.25rem 1.5rem;
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
    color: white;
    border-bottom: 2px solid #e2e8f0;
}

.woocommerce-table--order-details {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}

.woocommerce-table--order-details thead {
    background: #f8fafc;
}

.woocommerce-table--order-details thead th {
    padding: 1rem 1.5rem;
    text-align: left;
    font-size: 0.875rem;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 2px solid #e2e8f0;
}

.woocommerce-table--order-details tbody td {
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid #e2e8f0;
    vertical-align: top;
}

.woocommerce-table--order-details tbody tr:last-child td {
    border-bottom: none;
}

.woocommerce-table--order-details .product-name {
    color: #0f172a;
    font-weight: 500;
}

.woocommerce-table--order-details .product-total {
    text-align: right;
    color: #0f172a;
    font-weight: 600;
}

.woocommerce-table--order-details tfoot {
    background: #f8fafc;
}

.woocommerce-table--order-details tfoot th,
.woocommerce-table--order-details tfoot td {
    padding: 0.75rem 1.5rem;
    border-top: 1px solid #e2e8f0;
    font-size: 0.9375rem;
}

.woocommerce-table--order-details tfoot th {
    text-align: left;
    color: #64748b;
    font-weight: 500;
}

.woocommerce-table--order-details tfoot td {
    text-align: right;
    color: #0f172a;
    font-weight: 600;
}

.woocommerce-table--order-details tfoot tr.order-total th,
.woocommerce-table--order-details tfoot tr.order-total td {
    border-top: 2px solid #e2e8f0;
    padding-top: 1rem;
    margin-top: 0.5rem;
    font-size: 1.125rem;
    font-weight: 700;
    color: #0f172a;
}

/* Order Actions */
.woocommerce-table--order-details .order-actions--heading {
    color: #64748b;
    font-weight: 500;
    font-size: 0.875rem;
}

.woocommerce-table--order-details .order-actions-button {
    display: inline-block;
    padding: 0.5rem 1rem;
    margin-right: 0.5rem;
    margin-bottom: 0.5rem;
    background: #0f172a;
    color: white;
    text-decoration: none;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    transition: all 0.2s;
}

.woocommerce-table--order-details .order-actions-button:hover {
    background: #1e293b;
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

/* Customer Note */
.woocommerce-table--order-details tfoot tr:has(th:contains("Note")) th,
.woocommerce-table--order-details tfoot tr:has(th:contains("Note")) td {
    border-top: 1px solid #e2e8f0;
    padding-top: 1rem;
    color: #64748b;
    font-style: italic;
}

/* WooCommerce Customer Details Section */
.woocommerce-customer-details {
    background: white;
    border-radius: 1rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    padding: 0;
    margin: 2rem 0;
    overflow: hidden;
    transition: transform 0.2s, box-shadow 0.2s;
}

.woocommerce-customer-details:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.woocommerce-columns--addresses {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
}

@media (min-width: 768px) {
    .woocommerce-columns--addresses {
        grid-template-columns: repeat(2, 1fr);
    }
}

.woocommerce-column {
    padding: 1.5rem;
}

.woocommerce-column:first-child {
    border-right: 1px solid #e2e8f0;
}

@media (max-width: 767px) {
    .woocommerce-column:first-child {
        border-right: none;
        border-bottom: 1px solid #e2e8f0;
    }
}

.woocommerce-column__title {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    padding: 1.25rem 1.5rem;
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
    color: white;
    border-bottom: 2px solid #e2e8f0;
}

.woocommerce-column--billing-address .woocommerce-column__title,
.woocommerce-column--shipping-address .woocommerce-column__title {
    background: transparent;
    padding: 0 0 1rem 0;
    margin-bottom: 1rem;
    color: #0f172a;
    font-size: 1.125rem;
    border-bottom: 1px solid #e2e8f0;
}

.woocommerce-customer-details address {
    font-style: normal;
    line-height: 1.8;
    color: #334155;
    font-size: 0.9375rem;
    margin: 0;
}

.woocommerce-customer-details--phone,
.woocommerce-customer-details--email {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #e2e8f0;
    color: #334155;
    font-size: 0.9375rem;
}

.woocommerce-customer-details--phone a,
.woocommerce-customer-details--email a {
    color: #2563eb;
    text-decoration: none;
    transition: color 0.2s;
}

.woocommerce-customer-details--phone a:hover,
.woocommerce-customer-details--email a:hover {
    color: #1d4ed8;
    text-decoration: underline;
}

/* Order Details Item */
.woocommerce-table--order-details .product-quantity {
    color: #64748b;
    font-size: 0.875rem;
    font-weight: normal;
    margin-left: 0.5rem;
}

.woocommerce-table--order-details .wc-item-meta {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px solid #e2e8f0;
}

.woocommerce-table--order-details .wc-item-meta-label {
    font-weight: 500;
    color: #64748b;
    margin-right: 0.5rem;
}

.woocommerce-table--order-details .wc-item-meta-value {
    color: #0f172a;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .woocommerce-order-details,
    .woocommerce-customer-details {
        margin: 1.5rem 0;
    }

    .woocommerce-order-details__title,
    .woocommerce-column__title {
        padding: 1rem 1.25rem;
        font-size: 1.125rem;
    }

    .woocommerce-table--order-details thead th,
    .woocommerce-table--order-details tbody td,
    .woocommerce-table--order-details tfoot th,
    .woocommerce-table--order-details tfoot td {
        padding: 0.75rem 1rem;
        font-size: 0.875rem;
    }

    .woocommerce-table--order-details .product-total {
        text-align: left;
        margin-top: 0.5rem;
    }

    .woocommerce-column {
        padding: 1.25rem;
    }
}

.coupon-button {
    margin-top: 1rem;
    width: 100%;
    background: var(--color-dark) !important;
    color: var(--color-creamy-whity-blue) !important;
    padding: var(--spacing-md) var(--spacing-xl) !important;
    border: 2px solid var(--color-dark) !important;
    border-radius: var(--small-radius) !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-decoration: none !important;
    display: inline-block !important;
}