/* =========================================================
   Template Layout Rhythm
   ========================================================= */
.landing-page-middle-stage {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #fbfdff 0%, #f8fafc 100%);
    box-shadow:
        0 24px 60px rgba(15, 23, 42, 0.08),
        0 8px 18px rgba(15, 23, 42, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.45);
    border-left: 1px solid rgba(255, 255, 255, 0.32);
    border-right: 1px solid rgba(15, 23, 42, 0.04);
    border-radius: 0 0 32px 32px;
}

.landing-block {
    position: relative;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.landing-block + .landing-block {
    margin-top: 0;
}

.landing-block--surface {
    background: #f8fafc;
}

.landing-block--soft {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.landing-block--accent {
    background: linear-gradient(135deg, #eef2ff 0%, #f8fafc 100%);
}

.landing-block-heading {
    max-width: 760px;
    margin: 0 auto 2.4rem;
}

.landing-block-heading.text-start {
    margin-left: 0;
    margin-right: auto;
}

.landing-block-heading.text-end {
    margin-left: auto;
    margin-right: 0;
}

.landing-block-heading h2 {
    margin: 0;
    font-size: clamp(2rem, 4vw, 2.8rem);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: inherit;
}

.landing-block-heading p {
    margin: 0.9rem 0 0;
    font-size: 1.02rem;
    line-height: 1.8;
    color: inherit;
    opacity: 0.82;
}

/* =========================================================
   Premium Rich Text Block
   ========================================================= */

.landing-block-text .landing-block-heading h2,
.landing-block-text .landing-block-heading p,
.landing-block-text .landing-rich-text,
.landing-block-text .landing-rich-text h1,
.landing-block-text .landing-rich-text h2,
.landing-block-text .landing-rich-text h3,
.landing-block-text .landing-rich-text h4,
.landing-block-text .landing-rich-text h5,
.landing-block-text .landing-rich-text h6,
.landing-block-text .landing-rich-text p,
.landing-block-text .landing-rich-text li,
.landing-block-text .landing-rich-text strong,
.landing-block-text .landing-rich-text em,
.landing-block-text .landing-rich-text span,
.landing-block-text .landing-rich-text a,
.landing-block-text .landing-rich-text blockquote {
    color: inherit;
}

.landing-block-text .landing-rich-text {
    max-width: 760px;
    margin-left: 0;
    margin-right: auto;
    font-size: 1.02rem;
    line-height: 1.9;
}

.landing-block-text.text-center .landing-rich-text {
    margin-left: auto;
    margin-right: auto;
}

.landing-block-text.text-end .landing-rich-text {
    margin-left: auto;
    margin-right: 0;
}

.landing-block-text .landing-rich-text > *:first-child {
    margin-top: 0;
}

.landing-block-text .landing-rich-text > *:last-child {
    margin-bottom: 0;
}

.landing-block-text .landing-rich-text h2,
.landing-block-text .landing-rich-text h3,
.landing-block-text .landing-rich-text h4 {
    font-weight: 800;
    letter-spacing: -0.02em;
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.landing-block-text .landing-rich-text ul,
.landing-block-text .landing-rich-text ol {
    padding-left: 1.35rem;
    margin: 1.2rem 0;
}

.landing-block-text .landing-rich-text li {
    margin-bottom: 0.7rem;
}

.landing-block-text .landing-rich-text blockquote {
    margin: 1.8rem 0;
    padding: 1.2rem 1.4rem;
    border-left: 4px solid rgba(99, 102, 241, 0.55);
    background: rgba(99, 102, 241, 0.08);
    border-radius: 1rem;
    font-style: italic;
}

/* =========================================================
   Premium Featured Products Block
   ========================================================= */

.landing-block-featured-products {
    position: relative;
}

/* Section heading should honor block text color */
.landing-block-featured-products .landing-block-heading {
    max-width: 820px;
    margin: 0 auto 2rem;
    text-align: center;
}

.landing-block-featured-products .landing-block-heading.text-start {
    margin-left: 0;
    margin-right: auto;
    text-align: left;
}

.landing-block-featured-products .landing-block-heading.text-end {
    margin-left: auto;
    margin-right: 0;
    text-align: right;
}

.landing-block-featured-products .landing-block-heading h2,
.landing-block-featured-products .landing-block-heading p {
    color: inherit;
}

.landing-block-featured-products .landing-block-heading p {
    opacity: 0.82;
}

/* Cards */
.landing-featured-product-card,
.landing-block-featured-products .product-card {
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 1.4rem;
    overflow: hidden;
    background: #fff;
    color: inherit;
    box-shadow:
        0 14px 34px rgba(15, 23, 42, 0.06),
        0 2px 8px rgba(15, 23, 42, 0.03);
    transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.landing-featured-product-card:hover,
.landing-block-featured-products .product-card:hover {
    transform: translateY(-4px);
    box-shadow:
        0 24px 48px rgba(15, 23, 42, 0.08),
        0 6px 14px rgba(15, 23, 42, 0.04);
}

.landing-featured-product-media {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    background: linear-gradient(135deg, #eef2ff 0%, #f8fafc 100%);
}

.landing-featured-product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.landing-featured-product-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #e0e7ff, #cffafe);
    color: #312e81;
}

.landing-featured-product-placeholder span {
    font-size: 2.5rem;
    font-weight: 800;
    letter-spacing: -0.03em;
}

.landing-product-price-badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #4338ca;
    font-weight: 800;
    font-size: 0.92rem;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.10);
    backdrop-filter: blur(8px);
}

.landing-product-preview-badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
    display: inline-flex;
    align-items: center;
    padding: 0.42rem 0.75rem;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.82);
    color: #fff;
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.landing-featured-product-card .card-body,
.landing-featured-product-card .product-card-body,
.landing-block-featured-products .product-card-body {
    padding: 1.4rem;
    color: inherit;
}

.landing-featured-product-title,
.landing-featured-product-card .card-title,
.landing-featured-product-card .product-title,
.landing-block-featured-products .product-title {
    margin: 0 0 0.7rem;
    font-size: 1.08rem;
    font-weight: 800;
    color: inherit;
    letter-spacing: -0.02em;
    line-height: 1.25;
}

.landing-featured-product-description,
.landing-featured-product-card .card-text,
.landing-featured-product-card .product-description,
.landing-block-featured-products .product-description {
    color: inherit;
    opacity: 0.82;
    line-height: 1.75;
    font-size: 0.94rem;
    margin-bottom: 0;
}

.landing-product-price,
.landing-block-featured-products .product-price,
.landing-featured-product-card .landing-product-price {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    background: rgba(99, 102, 241, 0.10);
    color: #4338ca;
    font-weight: 700;
    font-size: 0.92rem;
}

.landing-featured-product-card .btn,
.landing-block-featured-products .btn {
    border-radius: 999px;
    padding: 0.78rem 1.1rem;
    font-weight: 700;
    border: 0;
    box-shadow: 0 10px 22px rgba(79, 70, 229, 0.16);
}

.landing-featured-product-card .btn:disabled {
    opacity: 0.88;
    cursor: default;
}

/* =========================================================
   Premium Contact Form Block
   ========================================================= */

.landing-contact-form-premium {
    position: relative;
    overflow: hidden;
}

.landing-contact-form-premium .landing-contact-shell {
    position: relative;
    padding: 0;
}

.landing-contact-form-premium .landing-contact-heading {
    max-width: 760px;
    margin: 0 auto 22px;
    text-align: center;
}

.landing-contact-form-premium .landing-contact-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(226, 232, 240, 0.68);
}

.landing-contact-form-premium .landing-contact-kicker::before,
.landing-contact-form-premium .landing-contact-kicker::after {
    content: '';
    width: 22px;
    height: 1px;
    background: rgba(148, 163, 184, 0.45);
}

.landing-contact-form-premium .landing-contact-heading h2 {
    margin: 0;
    font-size: clamp(2rem, 3.8vw, 3rem);
    line-height: 1.04;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: #eef2ff;
}

.landing-contact-form-premium .landing-contact-heading p {
    margin: 10px auto 0;
    max-width: 660px;
    font-size: 1rem;
    line-height: 1.75;
    color: rgba(226, 232, 240, 0.72);
    opacity: 1;
}

.landing-contact-form-premium .landing-contact-card {
    position: relative;
    border-radius: 30px;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.88), rgba(15, 23, 42, 0.96));
    box-shadow:
        0 22px 60px rgba(2, 6, 23, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.landing-contact-form-premium .landing-contact-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top left, rgba(99, 102, 241, 0.16), transparent 34%),
        radial-gradient(circle at bottom right, rgba(56, 189, 248, 0.12), transparent 30%);
    pointer-events: none;
}

.landing-contact-form-premium .landing-contact-panel {
    position: relative;
    z-index: 1;
    height: 100%;
    padding: 34px;
}

.landing-contact-form-premium .landing-contact-info {
    border-right: 1px solid rgba(148, 163, 184, 0.12);
}

.landing-contact-form-premium .landing-contact-info-title {
    margin: 0 0 14px;
    font-size: 1.7rem;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: -0.025em;
    color: #f8fafc;
}

.landing-contact-form-premium .landing-contact-info-text {
    margin: 0;
    font-size: 0.98rem;
    line-height: 1.85;
    color: rgba(226, 232, 240, 0.72);
}

.landing-contact-form-premium .landing-contact-meta {
    display: grid;
    gap: 12px;
    margin-top: 26px;
}

.landing-contact-form-premium .landing-contact-meta-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(148, 163, 184, 0.10);
}

.landing-contact-form-premium .landing-contact-meta-icon {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(224, 231, 255, 0.18), rgba(207, 250, 254, 0.12));
    color: #c7d2fe;
    font-size: 1rem;
    flex-shrink: 0;
}

.landing-contact-form-premium .landing-contact-meta-body strong {
    display: block;
    margin-bottom: 2px;
    font-size: 0.96rem;
    font-weight: 700;
    color: #f8fafc;
}

.landing-contact-form-premium .landing-contact-meta-body span {
    display: block;
    font-size: 0.9rem;
    line-height: 1.7;
    color: rgba(226, 232, 240, 0.68);
}

.landing-contact-form-premium .landing-contact-details {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(148, 163, 184, 0.12);
    display: grid;
    gap: 12px;
}

.landing-contact-form-premium .landing-contact-detail-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 12px 0;
}

.landing-contact-form-premium .landing-contact-detail-icon {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.05);
    color: #cbd5e1;
    font-size: 0.98rem;
    flex-shrink: 0;
}

.landing-contact-form-premium .landing-contact-detail-body {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.landing-contact-form-premium .landing-contact-detail-label {
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: rgba(226, 232, 240, 0.56);
}

.landing-contact-form-premium .landing-contact-detail-value {
    font-size: 0.96rem;
    line-height: 1.7;
    color: #f8fafc;
    text-decoration: none;
}

.landing-contact-form-premium .landing-contact-detail-value:hover {
    color: #c7d2fe;
}

.landing-contact-form-premium .landing-contact-notice {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(186, 230, 253, 0.16);
    border: 1px solid rgba(125, 211, 252, 0.22);
    color: #dbeafe;
    font-size: 0.93rem;
    line-height: 1.6;
}

.landing-contact-form-premium .landing-contact-notice i {
    color: #7dd3fc;
}

.landing-contact-form-premium .landing-contact-alert {
    margin-bottom: 18px;
    border-radius: 18px;
    border: 1px solid rgba(148, 163, 184, 0.12);
    padding: 14px 16px;
    font-size: 0.94rem;
}

.landing-contact-form-premium .landing-contact-alert--success {
    background: rgba(34, 197, 94, 0.12);
    color: #dcfce7;
    border-color: rgba(34, 197, 94, 0.18);
}

.landing-contact-form-premium .landing-contact-alert--danger {
    background: rgba(239, 68, 68, 0.10);
    color: #fee2e2;
    border-color: rgba(239, 68, 68, 0.18);
}

.landing-contact-form-premium .landing-contact-form-inner .form-label {
    margin-bottom: 8px;
    font-size: 0.92rem;
    font-weight: 700;
    color: #dbe4f2;
}

.landing-contact-form-premium .landing-contact-form-inner .form-control {
    min-height: 56px;
    border-radius: 18px;
    border: 1px solid rgba(148, 163, 184, 0.18);
    background: #f8fafc;
    color: #0f172a;
    padding: 14px 18px;
    box-shadow: none;
}

.landing-contact-form-premium .landing-contact-form-inner textarea.form-control {
    min-height: 148px;
    resize: vertical;
}

.landing-contact-form-premium .landing-contact-form-inner .form-control::placeholder {
    color: #94a3b8;
}

.landing-contact-form-premium .landing-contact-form-inner .form-control:focus {
    border-color: rgba(99, 102, 241, 0.45);
    box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.12);
}

.landing-contact-form-premium .landing-contact-form-inner .invalid-feedback {
    color: #fecaca;
    font-size: 0.86rem;
}

.landing-contact-form-premium .landing-contact-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 54px;
    padding: 0 22px;
    border-radius: 999px;
    border-width: 1px;
    font-weight: 700;
    letter-spacing: -0.01em;
    box-shadow:
        0 12px 24px rgba(37, 99, 235, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.landing-contact-form-premium .landing-contact-submit:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

.landing-contact-form-premium .landing-contact-footnote {
    margin-top: 14px;
    font-size: 0.88rem;
    line-height: 1.7;
    color: rgba(226, 232, 240, 0.58);
}

.landing-contact-form-premium .landing-contact-success-preview {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px dashed rgba(148, 163, 184, 0.16);
    font-size: 0.88rem;
    line-height: 1.7;
    color: rgba(226, 232, 240, 0.58);
}

.landing-contact-form-premium.landing-contact-form--centered .landing-contact-card {
    max-width: 900px;
    margin: 0 auto;
}

.landing-contact-form-premium.landing-contact-form--centered .landing-contact-panel {
    padding: 34px;
}

@media (max-width: 991.98px) {
    .landing-contact-form-premium .landing-contact-info {
        border-right: 0;
        border-bottom: 1px solid rgba(148, 163, 184, 0.12);
    }

    .landing-contact-form-premium .landing-contact-panel {
        padding: 26px;
    }
}

@media (max-width: 575.98px) {
    .landing-contact-form-premium .landing-contact-card {
        border-radius: 24px;
    }

    .landing-contact-form-premium .landing-contact-panel {
        padding: 22px;
    }

    .landing-contact-form-premium .landing-contact-heading {
        margin-bottom: 24px;
    }

    .landing-contact-form-premium .landing-contact-submit {
        width: 100%;
    }
}

/* =========================================================
   Premium Testimonials Block
   ========================================================= */

.landing-block-testimonials {
    position: relative;
}

.landing-testimonial-card {
    position: relative;
    border-radius: 1.35rem;
    border: 1px solid rgba(148, 163, 184, 0.14);
    box-shadow:
        0 14px 34px rgba(15, 23, 42, 0.06),
        0 2px 8px rgba(15, 23, 42, 0.03);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    overflow: hidden;
}

.landing-testimonial-card:hover {
    transform: translateY(-3px);
    box-shadow:
        0 22px 44px rgba(15, 23, 42, 0.08),
        0 4px 12px rgba(15, 23, 42, 0.04);
}

.landing-testimonial-card .card-body {
    padding: 1.6rem;
}

.landing-testimonial-avatar {
    width: 64px;
    height: 64px;
    border-radius: 999px;
    object-fit: cover;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.10);
}

.landing-testimonial-avatar--fallback {
    width: 64px;
    height: 64px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 1rem;
    background: linear-gradient(135deg, #e0e7ff, #cffafe);
    color: #312e81;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}

.landing-testimonial-name {
    margin: 0 0 0.15rem;
    font-size: 1rem;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.01em;
}

.landing-testimonial-meta {
    font-size: 0.88rem;
    color: #64748b;
}

.landing-testimonial-rating {
    margin: 0.85rem 0 1rem;
    color: #f59e0b;
    letter-spacing: 0.08em;
}

.landing-testimonial-quote-wrap {
    position: relative;
    padding-top: 0.2rem;
}

.landing-testimonial-quote-mark {
    position: absolute;
    top: -0.55rem;
    left: -0.1rem;
    font-size: 3.4rem;
    line-height: 1;
    font-weight: 800;
    color: rgba(99, 102, 241, 0.12);
    pointer-events: none;
}

.landing-testimonial-quote {
    position: relative;
    margin: 0;
}

.landing-testimonial-quote p {
    margin: 0;
    font-size: 0.98rem;
    line-height: 1.8;
    color: #334155;
}

/* Testimonials heading polish */
.landing-block-testimonials .landing-block-heading {
    max-width: 820px;
    margin: 0 auto 2rem;
    text-align: center;
}

.landing-block-testimonials .landing-block-heading.text-start {
    margin-left: 0;
    margin-right: auto;
    text-align: left;
}

.landing-block-testimonials .landing-block-heading.text-end {
    margin-left: auto;
    margin-right: 0;
    text-align: right;
}

.landing-block-testimonials .landing-block-heading h2 {
    margin: 0;
    font-size: clamp(2.2rem, 4.2vw, 3.4rem);
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: #0f172a !important;
}

.landing-block-testimonials .landing-block-heading p {
    margin: 0.85rem 0 0;
    font-size: 1rem;
    line-height: 1.75;
    color: #64748b !important;
    opacity: 1;
}

/* =========================================================
   Premium FAQ Block
   ========================================================= */

.landing-block-faq {
    position: relative;
}

.landing-block-faq .landing-block-heading {
    max-width: 820px;
    margin: 0 0 2rem;
    text-align: left;
}

.landing-block-faq .landing-block-heading h2 {
    margin: 0;
    font-size: clamp(2.2rem, 4.2vw, 3.4rem);
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: #0f172a !important;
}

.landing-block-faq .landing-block-heading p {
    margin: 0.85rem 0 0;
    font-size: 1rem;
    line-height: 1.75;
    color: #64748b !important;
    opacity: 1;
}

.landing-faq-accordion .accordion-item {
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 1.15rem !important;
    box-shadow:
        0 12px 28px rgba(15, 23, 42, 0.05),
        0 2px 8px rgba(15, 23, 42, 0.03);
    overflow: hidden;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.landing-faq-accordion .accordion-item:hover {
    transform: translateY(-1px);
    box-shadow:
        0 18px 36px rgba(15, 23, 42, 0.06),
        0 4px 10px rgba(15, 23, 42, 0.03);
}

.landing-faq-accordion .accordion-button {
    padding: 1.15rem 1.2rem;
    font-size: 1rem;
    font-weight: 700;
    color: #0f172a;
    background: transparent;
    box-shadow: none;
}

.landing-faq-accordion .accordion-button:focus {
    box-shadow: none;
}

.landing-faq-accordion .accordion-button:not(.collapsed) {
    color: #1e3a8a;
    background: linear-gradient(180deg, rgba(219, 234, 254, 0.45), rgba(239, 246, 255, 0.72));
}

.landing-faq-accordion .accordion-button::after {
    transform: scale(0.9);
}

.landing-faq-accordion .accordion-body {
    padding: 0 1.2rem 1.2rem;
    font-size: 0.97rem;
    line-height: 1.8;
    color: #475569;
}

.landing-faq-accordion .accordion-item + .accordion-item {
    margin-top: 0.95rem;
}

/* =========================================================
   Premium Navigation Links
   ========================================================= */
.landing-block-navigation nav > div.d-flex.align-items-center.gap-3.flex-wrap > a.text-decoration-none:not(.btn) {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 16px;
    border-radius: 999px;
    font-size: 0.94rem;
    font-weight: 600;
    letter-spacing: 0.01em;

    /* inherit admin-selected link color */
    color: inherit;
    opacity: .88;

    text-decoration: none !important;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(148, 163, 184, 0.10);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.04),
        0 4px 14px rgba(2,6,23,0.08);

    transition:
        opacity .22s ease,
        background .22s ease,
        border-color .22s ease,
        transform .22s ease,
        box-shadow .22s ease;
}

.landing-block-navigation nav > div.d-flex.align-items-center.gap-3.flex-wrap > a.text-decoration-none:not(.btn):hover {
    opacity: 1;
    transform: translateY(-1px);

    background: rgba(255,255,255,0.07);
    border-color: rgba(96,165,250,0.18);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.06),
        0 10px 22px rgba(37,99,235,0.12);
}

/* active/current page */
.landing-block-navigation nav > div.d-flex.align-items-center.gap-3.flex-wrap > a.text-decoration-none:not(.btn)[style*="underline"] {
    opacity: 1;
    font-weight: 700;

    background: linear-gradient(
        135deg,
        rgba(37,99,235,0.14),
        rgba(124,58,237,0.14)
    );

    border-color: rgba(96,165,250,0.20);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.06),
        0 12px 26px rgba(37,99,235,0.12);
}

/* =========================================================
   Premium Brand / Logo Area
   ========================================================= */

.landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 12px !important;
    padding: 10px 16px 10px 10px;
    min-height: 52px;
    border-radius: 999px;
    text-decoration: none !important;
    color: inherit;
    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.05),
        rgba(255,255,255,0.02)
    );
    border: 1px solid rgba(148, 163, 184, 0.12);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.05),
        0 10px 24px rgba(2, 6, 23, 0.10);
    transition:
        transform .22s ease,
        background .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
    overflow: hidden;
}

.landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 14% 50%, rgba(96,165,250,0.16), transparent 28%),
        linear-gradient(135deg, rgba(59,130,246,0.06), rgba(139,92,246,0.05));
    pointer-events: none;
}

.landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2:hover {
    transform: translateY(-1px);
    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.08),
        rgba(255,255,255,0.03)
    );
    border-color: rgba(96,165,250,0.18);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.06),
        0 16px 32px rgba(37,99,235,0.14);
}

/* logo image */
.landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 img {
    position: relative;
    z-index: 1;
    display: block;
    border-radius: 12px;
    padding: 4px;
    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.12),
        rgba(255,255,255,0.03)
    );
    border: 1px solid rgba(148,163,184,0.12);
    box-shadow:
        0 8px 20px rgba(37,99,235,0.16),
        inset 0 1px 0 rgba(255,255,255,0.08);
}

/* brand text */
.landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 .fw-semibold.fs-5 {
    position: relative;
    z-index: 1;
    margin: 0;
    font-size: 1.05rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
    line-height: 1.1;
    color: inherit;
}

/* premium sale chip attached to brand text */
.landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 .fw-semibold.fs-5::after {
    display: inline-flex;
    align-items: center;
    margin-left: 12px;
    padding: 6px 12px;
    border-radius: 999px;
    vertical-align: middle;

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;

    color: #dbeafe;
    background: linear-gradient(
        135deg,
        rgba(37,99,235,0.18),
        rgba(124,58,237,0.18)
    );
    border: 1px solid rgba(147,197,253,0.16);

    box-shadow:
        0 6px 18px rgba(37,99,235,0.10),
        inset 0 1px 0 rgba(255,255,255,0.05);
}

/* if there is logo only and no visible text, avoid weird spacing */
.landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 .fw-semibold.fs-5:empty::after {
    display: none;
}

/* mobile refinement */
@media (max-width: 991.98px) {
    .landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 {
        padding: 10px 14px 10px 10px;
    }

}

@media (max-width: 575.98px) {
    .landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 {
        justify-content: center;
        width: 100%;
        border-radius: 18px;
    }

    .landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 .fw-semibold.fs-5 {
        font-size: 1rem !important;
    }
}

.landing-block-navigation {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 0;
    margin-bottom: 0;
}

.landing-block-navigation > .container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.landing-block-navigation nav {
    min-height: 40px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0;
    align-items: center;
}

/* override Bootstrap py-3 coming from the markup */
.landing-block-navigation nav.py-3 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* make the brand and links sit nicely within the shorter bar */
.landing-block-navigation nav > a.text-decoration-none.d-flex.align-items-center.gap-2 {
    min-height: 48px;
    padding-top: 3px;
    padding-bottom: 3px;
}

.landing-block-navigation nav > div.d-flex.align-items-center.gap-3.flex-wrap {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/* =========================================================
   Flash Sale Countdown Storm - Premium Countdown Timer
   ========================================================= */

.landing-countdown-timer {
    position: relative;
    overflow: hidden;
    padding-top: 3.25rem !important;
    padding-bottom: 3rem !important;
}

.landing-countdown-timer::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 20%, rgba(59, 130, 246, 0.16), transparent 28%),
        radial-gradient(circle at 82% 16%, rgba(139, 92, 246, 0.14), transparent 24%),
        radial-gradient(circle at 50% 100%, rgba(34, 211, 238, 0.10), transparent 34%);
    pointer-events: none;
}

.landing-countdown-timer > .container {
    position: relative;
    z-index: 1;
}

.landing-countdown-timer h2 {
    color: inherit;
    font-size: clamp(2rem, 4vw, 2.8rem);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -0.03em;
}

.landing-countdown-timer p {
    color: inherit;
}

/* the actual timer shell */
.landing-countdown-timer .countdown-timer-box {
    position: relative;
}

/* timer unit cards */
.landing-countdown-timer .countdown-parts > div > div {
    background: linear-gradient(
        180deg,
        rgba(17, 24, 39, 0.92),
        rgba(30, 41, 59, 0.88)
    );
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    border-radius: 1.2rem !important;
    box-shadow:
        0 18px 36px rgba(2, 6, 23, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    min-height: 132px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.landing-countdown-timer .countdown-parts > div > div:hover {
    transform: translateY(-2px);
    border-color: rgba(96, 165, 250, 0.24) !important;
    box-shadow:
        0 22px 42px rgba(37, 99, 235, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

/* big digits */
.landing-countdown-timer .countdown-days,
.landing-countdown-timer .countdown-hours,
.landing-countdown-timer .countdown-minutes,
.landing-countdown-timer .countdown-seconds {
    color: #ffffff !important;
    font-size: clamp(2rem, 3vw, 2.6rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.04em;
    line-height: 1;
    text-shadow: 0 0 18px rgba(96, 165, 250, 0.16);
    margin-bottom: 0.45rem;
}

/* labels */
.landing-countdown-timer .small.text-uppercase {
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
}

/* expired message */
.landing-countdown-timer .countdown-expired-message p {
    color: #ffffff !important;
    font-size: 1rem;
}

/* button beneath countdown */
.landing-countdown-timer .btn.btn-primary.btn-lg {
    min-width: 220px;
    padding: 0.9rem 1.5rem;
    border-radius: 999px;
    font-weight: 700;
    border: 0;
    box-shadow: 0 14px 28px rgba(37, 99, 235, 0.24);
    transition: transform 0.22s ease, box-shadow 0.22s ease, filter 0.22s ease;
}

.landing-countdown-timer .btn.btn-primary.btn-lg:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 34px rgba(37, 99, 235, 0.30);
    filter: brightness(1.04);
}

/* mobile */
@media (max-width: 767.98px) {
    .landing-countdown-timer .countdown-parts > div > div {
        min-height: 112px;
        border-radius: 1rem !important;
    }

    .landing-countdown-timer .countdown-days,
    .landing-countdown-timer .countdown-hours,
    .landing-countdown-timer .countdown-minutes,
    .landing-countdown-timer .countdown-seconds {
        font-size: 1.9rem !important;
    }
}

/* Announcement bar block */
.announcement-bar-wrap {
    width: 100%;
}
.announcement-bar-inner {
    gap: 0.75rem;
    min-height: 52px;
}
.announcement-bar-message {
    min-width: 0;
}
.announcement-bar-text {
    line-height: 1.4;
    word-break: break-word;
}
.announcement-bar-link {
    white-space: nowrap;
}
.announcement-bar-close {
    border: 0;
    background: transparent;
    font-size: 1.25rem;
    line-height: 1;
    padding: 0.125rem 0.25rem;
    cursor: pointer;
    flex: 0 0 auto;
}

/* Popup offer block */
.bt-popup-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
    background: rgba(15, 23, 42, 0.58);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}
.bt-popup-box {
    position: relative;
    width: 100%;
    max-width: 480px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.25);
    animation: btPopupIn 0.22s ease-out;
}
.bt-popup-close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    width: 38px;
    height: 38px;
    border: none;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.9);
    color: #111827;
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.14);
    transition: transform 0.15s ease, background 0.15s ease;
}
.bt-popup-close:hover {
    transform: scale(1.05);
    background: #ffffff;
}
.bt-popup-media {
    width: 100%;
    background: rgba(0, 0, 0, 0.03);
}
.bt-popup-image {
    display: block;
    width: 100%;
    height: auto;
    max-height: 240px;
    object-fit: cover;
}
.bt-popup-content {
    padding: 1.5rem 1.5rem 1.4rem;
}
.bt-popup-title {
    margin: 0 0 0.7rem;
    font-size: 1.45rem;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: 0;
}
.bt-popup-body {
    margin: 0;
    font-size: 1rem;
    line-height: 1.6;
    opacity: 0.9;
}
.bt-popup-actions {
    margin-top: 1.1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}
.bt-popup-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0.8rem 1.1rem;
    border-radius: 12px;
    background: #0d6efd;
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.2;
    transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
    box-shadow: 0 10px 24px rgba(13, 110, 253, 0.24);
}
.bt-popup-btn:hover {
    transform: translateY(-1px);
    opacity: 0.96;
    color: #ffffff;
    text-decoration: none;
}
@keyframes btPopupIn {
    from {
        opacity: 0;
        transform: translateY(10px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* =========================================================
   BizTowers Premium Landing Engine - Batch 1
   ========================================================= */

.landing-page-shell {
    isolation: isolate;
    position: relative;
    min-height: 100vh;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    text-rendering: optimizeLegibility;
}

.landing-page-shell::before,
.landing-page-shell::after {
    content: "";
    position: fixed;
    z-index: -1;
    pointer-events: none;
    border-radius: 999px;
    filter: blur(10px);
}

.landing-page-shell::before {
    width: min(42vw, 620px);
    height: min(42vw, 620px);
    top: 7vh;
    left: -12vw;
    background: radial-gradient(circle, rgba(37, 99, 235, .18), transparent 68%);
}

.landing-page-shell::after {
    width: min(36vw, 520px);
    height: min(36vw, 520px);
    right: -10vw;
    bottom: 10vh;
    background: radial-gradient(circle, rgba(20, 184, 166, .14), transparent 66%);
}

.landing-page-shell--centered {
    padding-top: 0;
}

.landing-page-shell--centered::before {
    box-shadow: 0 0 120px rgba(79, 70, 229, .10);
}

.landing-page-middle-stage {
    width: min(100% - 48px, 1200px);
    max-width: 1200px;
    overflow: clip;
    background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.92)),
        radial-gradient(circle at 50% 0%, rgba(219, 234, 254, .48), transparent 42%);
    border: 1px solid rgba(255,255,255,.64);
    border-top: 0;
    box-shadow:
        0 34px 90px rgba(15, 23, 42, .13),
        0 10px 30px rgba(15, 23, 42, .07),
        inset 0 1px 0 rgba(255,255,255,.72);
}

.landing-block {
    padding-top: clamp(2.25rem, 5vw, 4.5rem);
    padding-bottom: clamp(2.25rem, 5vw, 4.5rem);
}

.landing-block + .landing-block {
    border-top: 1px solid rgba(15, 23, 42, .045);
}

.landing-block > .container,
.landing-block > .container-fluid {
    position: relative;
    z-index: 1;
}

.landing-block--surface,
.landing-block--soft,
.landing-block--accent {
    background:
        radial-gradient(circle at top left, rgba(37, 99, 235, .055), transparent 32%),
        linear-gradient(180deg, rgba(255,255,255,.86), rgba(248,250,252,.82));
}

.landing-block-heading {
    max-width: 820px;
    margin-bottom: clamp(1.5rem, 3vw, 2.75rem);
}

.landing-block-heading h2 {
    font-size: clamp(1.85rem, 4.6vw, 3.35rem);
    line-height: 1.02;
    font-weight: 820;
    letter-spacing: 0;
    color: #0f172a;
}

.landing-block-heading p {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    font-size: clamp(1rem, 1.4vw, 1.14rem);
    line-height: 1.75;
    color: #64748b;
    opacity: 1;
}

.landing-block-heading.text-start p {
    margin-left: 0;
}

.landing-block-heading.text-end p {
    margin-right: 0;
}

.landing-navigation-ribbon {
    padding: .85rem clamp(.75rem, 2vw, 1.2rem) !important;
    background: transparent !important;
    border-bottom: 0 !important;
}

.landing-navigation-ribbon .container {
    max-width: 1120px;
}

.landing-navigation-ribbon__inner {
    min-height: 64px !important;
    padding: .55rem .65rem !important;
    border-radius: 999px;
    background: rgba(255,255,255,.78);
    border: 1px solid rgba(148, 163, 184, .18);
    box-shadow:
        0 18px 48px rgba(15, 23, 42, .10),
        inset 0 1px 0 rgba(255,255,255,.76);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.landing-navigation-ribbon__brand {
    min-height: 48px !important;
    padding: .35rem .9rem .35rem .38rem !important;
    border-radius: 999px !important;
    background: rgba(248, 250, 252, .72) !important;
    border-color: rgba(148, 163, 184, .12) !important;
    box-shadow: none !important;
}

.landing-navigation-ribbon__brand::before,
.landing-navigation-ribbon__name::after {
    display: none !important;
}

.landing-navigation-ribbon__logo {
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .10) !important;
}

.landing-navigation-ribbon__name {
    font-size: .98rem !important;
    font-weight: 760 !important;
    color: #0f172a !important;
}

.landing-navigation-ribbon__links {
    gap: .45rem !important;
}

.landing-navigation-ribbon__link {
    min-height: 42px !important;
    padding: .58rem .9rem !important;
    border-radius: 999px !important;
    color: #334155 !important;
    font-size: .9rem !important;
    font-weight: 680 !important;
    text-decoration: none !important;
    opacity: .86 !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    box-shadow: none !important;
}

.landing-navigation-ribbon__link:hover,
.landing-navigation-ribbon__link.is-active {
    opacity: 1 !important;
    color: #0f172a !important;
    background: rgba(37, 99, 235, .08) !important;
    border-color: rgba(37, 99, 235, .12) !important;
    transform: translateY(-1px);
}

.landing-navigation-ribbon__cta {
    min-height: 42px;
    border-radius: 999px !important;
    padding: .58rem 1rem !important;
    font-weight: 760 !important;
    box-shadow: 0 12px 28px rgba(37, 99, 235, .15);
}

.landing-block-hero {
    padding-top: 0;
    padding-bottom: clamp(1.2rem, 3vw, 2rem);
}

.landing-block-hero > .container-fluid,
.landing-block-hero > .container {
    padding-left: clamp(.75rem, 2vw, 1.5rem);
    padding-right: clamp(.75rem, 2vw, 1.5rem);
}

.hero-block-shell {
    min-height: clamp(460px, 65vh, 720px) !important;
    border-radius: clamp(22px, 2.6vw, 34px) !important;
    box-shadow:
        0 30px 80px rgba(15, 23, 42, .22),
        inset 0 1px 0 rgba(255,255,255,.14);
    background-position: center center !important;
}

.hero-block-shell::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(2, 6, 23, .08), rgba(2, 6, 23, .38)),
        radial-gradient(circle at 50% 20%, rgba(255,255,255,.16), transparent 36%);
    pointer-events: none;
}

.hero-block-overlay {
    background:
        linear-gradient(90deg, rgba(2, 6, 23, .62), rgba(2, 6, 23, .28) 48%, rgba(2, 6, 23, .58)) !important;
}

.hero-block-content {
    position: relative;
    z-index: 2;
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    text-wrap: balance;
}

.hero-block-content.text-start {
    margin-left: 0;
}

.hero-block-content.text-end {
    margin-right: 0;
}

.hero-block-title {
    max-width: 11ch;
    margin-left: auto;
    margin-right: auto;
    font-size: clamp(2.45rem, 8vw, 6.3rem) !important;
    line-height: .98;
    letter-spacing: 0;
    text-wrap: balance;
    overflow-wrap: anywhere;
    text-shadow: 0 14px 44px rgba(0,0,0,.38);
}

.hero-block-content.text-start .hero-block-title,
.hero-block-content.text-start .hero-block-subtitle {
    margin-left: 0;
}

.hero-block-content.text-end .hero-block-title,
.hero-block-content.text-end .hero-block-subtitle {
    margin-right: 0;
}

.hero-block-subtitle {
    max-width: 820px;
    font-size: clamp(1rem, 2.1vw, 1.35rem);
    line-height: 1.65;
    text-shadow: 0 8px 28px rgba(0,0,0,.38);
}

.hero-block-button {
    min-height: 54px;
    border-radius: 999px !important;
    padding: .9rem 1.35rem !important;
    font-weight: 760 !important;
    box-shadow: 0 16px 36px rgba(15, 23, 42, .22);
}

.landing-featured-product-card,
.landing-testimonial-card,
.landing-faq-item {
    border-radius: 26px !important;
    border: 1px solid rgba(148, 163, 184, .16) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.94)) !important;
    box-shadow:
        0 20px 50px rgba(15, 23, 42, .08),
        0 2px 10px rgba(15, 23, 42, .035) !important;
}

.landing-featured-product-card:hover,
.landing-testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow:
        0 30px 70px rgba(15, 23, 42, .12),
        0 8px 20px rgba(15, 23, 42, .05) !important;
}

.landing-featured-product-media {
    aspect-ratio: 16 / 11;
    border-bottom: 1px solid rgba(15, 23, 42, .06);
}

.landing-featured-product-image {
    transition: transform .45s ease;
}

.landing-featured-product-card:hover .landing-featured-product-image {
    transform: scale(1.035);
}

.landing-featured-product-title,
.landing-testimonial-name {
    font-weight: 760;
    letter-spacing: 0;
}

.landing-product-current-price {
    font-weight: 820;
}

.landing-testimonial-card .card-body {
    padding: clamp(1.25rem, 2.5vw, 1.8rem);
}

.landing-testimonial-quote-mark {
    color: rgba(37, 99, 235, .10);
}

.landing-testimonial-quote p {
    color: #334155;
    font-size: .98rem;
}

.landing-faq-accordion {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
}

.landing-faq-accordion .accordion-button {
    min-height: 64px;
    padding: 1.15rem 1.25rem;
    font-weight: 720 !important;
    color: #0f172a;
    background: transparent;
    box-shadow: none;
}

.landing-faq-accordion .accordion-button:not(.collapsed) {
    color: #1d4ed8;
    background: rgba(37, 99, 235, .045);
}

.landing-faq-answer {
    color: #475569;
}

.landing-subscribe-form {
    padding-top: clamp(2rem, 5vw, 4rem) !important;
    padding-bottom: clamp(2rem, 5vw, 4rem) !important;
}

.landing-subscribe-panel {
    max-width: 820px;
    padding: clamp(1.35rem, 4vw, 2.35rem);
    border-radius: 30px;
    background:
        radial-gradient(circle at 12% 0%, rgba(96, 165, 250, .16), transparent 34%),
        linear-gradient(180deg, rgba(15, 23, 42, .94), rgba(15, 23, 42, .88));
    color: #f8fafc;
    border: 1px solid rgba(255,255,255,.12);
    box-shadow:
        0 28px 70px rgba(15, 23, 42, .24),
        inset 0 1px 0 rgba(255,255,255,.08);
}

.landing-subscribe-title {
    font-size: clamp(1.7rem, 4vw, 2.7rem);
    line-height: 1.08;
    font-weight: 820;
    letter-spacing: 0;
}

.landing-subscribe-subtitle {
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
    color: rgba(226, 232, 240, .78);
    line-height: 1.7;
}

.landing-subscribe-form-inner .form-control {
    min-height: 56px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.16);
    background: rgba(255,255,255,.96);
    padding-left: 1.15rem;
}

.landing-subscribe-form-inner .btn {
    min-height: 56px;
    border-radius: 999px;
    font-weight: 780;
}

.bk-template-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(1.25rem, 3vw, 2rem);
    border-radius: 28px;
    background:
        radial-gradient(circle at 12% 18%, rgba(96, 165, 250, .20), transparent 34%),
        linear-gradient(135deg, #0f172a, #1e3a8a);
    color: #fff;
    box-shadow: 0 24px 64px rgba(15, 23, 42, .18);
}

.bk-template-hero-title {
    max-width: 780px;
    margin: .35rem 0 .5rem;
    font-size: clamp(1.65rem, 3.4vw, 3rem);
    line-height: 1.05;
    font-weight: 820;
    letter-spacing: 0;
}

.bk-template-hero-subtitle {
    max-width: 680px;
    color: rgba(226, 232, 240, .78);
    font-size: 1rem;
    line-height: 1.7;
}

.bk-template-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.bk-template-section-title {
    margin-bottom: .2rem;
    font-size: 1.08rem;
    font-weight: 820;
}

.bk-template-choice {
    position: relative;
    overflow: hidden;
    border-radius: 24px !important;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.bk-template-choice:hover {
    transform: translateY(-3px);
    border-color: rgba(37, 99, 235, .34) !important;
    box-shadow: 0 22px 52px rgba(15, 23, 42, .10);
}

.bk-template-choice.is-selected {
    border-color: rgba(37, 99, 235, .70) !important;
    box-shadow:
        0 22px 56px rgba(37, 99, 235, .16),
        0 0 0 4px rgba(37, 99, 235, .10);
}

.bk-template-choice.is-selected::after {
    content: "Selected";
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 2;
    padding: .35rem .65rem;
    border-radius: 999px;
    background: #2563eb;
    color: #fff;
    font-size: .72rem;
    font-weight: 820;
}

.bk-template-layout-badge,
.bk-template-category-badge {
    background: #f8fafc;
    color: #334155;
    border: 1px solid rgba(148, 163, 184, .22);
}

.bk-template-meta-chips,
.bk-mood-summary {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .45rem;
}

.bk-template-mood-chip,
.bk-mood-summary span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    min-height: 30px;
    padding: .38rem .65rem;
    border-radius: 999px;
    background: rgba(248, 250, 252, .92);
    color: #334155;
    border: 1px solid rgba(148, 163, 184, .20);
    font-size: .76rem;
    font-weight: 760;
    line-height: 1;
}

.bk-template-mood-chip--atmosphere {
    color: #1d4ed8;
    background: rgba(219, 234, 254, .76);
    border-color: rgba(96, 165, 250, .36);
}

.bk-mood-summary {
    max-width: 620px;
    justify-content: flex-end;
}

.bk-mood-summary .bk-mood-summary__label {
    color: #64748b;
    background: transparent;
    border-color: transparent;
    padding-left: 0;
    font-weight: 700;
}

@media (max-width: 767.98px) {
    .landing-page-middle-stage {
        width: 100%;
        max-width: 100%;
        border-radius: 0;
    }

    .landing-block {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .landing-navigation-ribbon__inner {
        border-radius: 24px;
        align-items: stretch !important;
    }

    .landing-navigation-ribbon__brand,
    .landing-navigation-ribbon__links,
    .landing-navigation-ribbon__cta {
        width: 100%;
        justify-content: center;
    }

    .hero-block-shell {
        min-height: 430px !important;
        border-radius: 22px !important;
    }

    .hero-block-title {
        max-width: 12ch;
        font-size: clamp(2.25rem, 12vw, 3.65rem) !important;
    }

    .hero-block-subtitle {
        font-size: 1rem;
    }

    .landing-subscribe-form-inner .form-control,
    .landing-subscribe-form-inner .btn {
        border-radius: 18px;
    }
}

/* =========================================================
   BizTowers Premium Landing Engine - Batch 2
   ========================================================= */

.landing-page-root {
    --lp-atmosphere-bg: #eef2f7;
    --lp-stage-bg: linear-gradient(180deg, rgba(255,255,255,.97), rgba(248,250,252,.94));
    --lp-glow-a: rgba(37, 99, 235, .16);
    --lp-glow-b: rgba(20, 184, 166, .12);
    --lp-accent: #2563eb;
    --lp-card-shadow: 0 20px 50px rgba(15, 23, 42, .08), 0 2px 10px rgba(15, 23, 42, .035);
    --lp-stage-shadow: 0 34px 90px rgba(15, 23, 42, .13), 0 10px 30px rgba(15, 23, 42, .07);
    --lp-block-y: clamp(2.25rem, 5vw, 4.5rem);
}

.landing-page-root.landing-page-shell::before {
    background: radial-gradient(circle, var(--lp-glow-a), transparent 68%);
}

.landing-page-root.landing-page-shell::after {
    background: radial-gradient(circle, var(--lp-glow-b), transparent 66%);
}

.landing-page-root .landing-page-middle-stage {
    background: var(--lp-stage-bg) !important;
    box-shadow: var(--lp-stage-shadow) !important;
}

.landing-page-root .landing-block {
    padding-top: var(--lp-block-y);
    padding-bottom: var(--lp-block-y);
}

.landing-page-root .landing-block-heading h2 {
    max-width: 900px;
}

.landing-page-root .btn-primary,
.landing-page-root .hero-block-button {
    border-color: var(--lp-accent);
}

.lp-atmosphere-classic {
    --lp-atmosphere-bg: #eef2f7;
    --lp-stage-bg: linear-gradient(180deg, rgba(255,255,255,.97), rgba(248,250,252,.94));
    --lp-glow-a: rgba(37, 99, 235, .16);
    --lp-glow-b: rgba(20, 184, 166, .12);
    --lp-accent: #2563eb;
    --lp-card-shadow: 0 20px 50px rgba(15, 23, 42, .08), 0 2px 10px rgba(15, 23, 42, .035);
}

.lp-atmosphere-midnight_luxury {
    --lp-atmosphere-bg: #08111f;
    --lp-stage-bg: linear-gradient(180deg, rgba(15,23,42,.97), rgba(17,24,39,.94));
    --lp-glow-a: rgba(59, 130, 246, .22);
    --lp-glow-b: rgba(245, 158, 11, .13);
    --lp-accent: #60a5fa;
    --lp-card-shadow: 0 24px 70px rgba(2, 6, 23, .28), 0 4px 16px rgba(2, 6, 23, .18);
}

.lp-atmosphere-bright_commerce {
    --lp-atmosphere-bg: #f5f9ff;
    --lp-stage-bg: linear-gradient(180deg, rgba(255,255,255,.98), rgba(239,246,255,.92));
    --lp-glow-a: rgba(14, 165, 233, .15);
    --lp-glow-b: rgba(34, 197, 94, .11);
    --lp-accent: #0284c7;
    --lp-card-shadow: 0 20px 48px rgba(14, 116, 144, .08), 0 2px 10px rgba(15, 23, 42, .035);
}

.lp-atmosphere-soft_editorial {
    --lp-atmosphere-bg: #f6f3ef;
    --lp-stage-bg: linear-gradient(180deg, rgba(255,252,247,.98), rgba(250,247,242,.94));
    --lp-glow-a: rgba(180, 83, 9, .10);
    --lp-glow-b: rgba(99, 102, 241, .10);
    --lp-accent: #7c3aed;
    --lp-card-shadow: 0 22px 54px rgba(87, 83, 78, .10), 0 2px 10px rgba(15, 23, 42, .03);
}

.lp-atmosphere-urban_premium {
    --lp-atmosphere-bg: #e9eef5;
    --lp-stage-bg: linear-gradient(180deg, rgba(248,250,252,.98), rgba(226,232,240,.90));
    --lp-glow-a: rgba(30, 64, 175, .15);
    --lp-glow-b: rgba(15, 23, 42, .10);
    --lp-accent: #1d4ed8;
    --lp-card-shadow: 0 24px 58px rgba(15, 23, 42, .11), 0 3px 12px rgba(15, 23, 42, .045);
}

.lp-atmosphere-gold_prestige {
    --lp-atmosphere-bg: #f5f0e6;
    --lp-stage-bg: linear-gradient(180deg, rgba(255,253,246,.98), rgba(250,244,232,.94));
    --lp-glow-a: rgba(217, 119, 6, .15);
    --lp-glow-b: rgba(37, 99, 235, .10);
    --lp-accent: #b45309;
    --lp-card-shadow: 0 24px 60px rgba(120, 53, 15, .12), 0 2px 10px rgba(15, 23, 42, .035);
}

.lp-atmosphere-natural_boutique {
    --lp-atmosphere-bg: #eff7f0;
    --lp-stage-bg: linear-gradient(180deg, rgba(250,255,250,.98), rgba(239,247,239,.94));
    --lp-glow-a: rgba(22, 163, 74, .13);
    --lp-glow-b: rgba(14, 165, 233, .09);
    --lp-accent: #15803d;
    --lp-card-shadow: 0 22px 54px rgba(21, 128, 61, .09), 0 2px 10px rgba(15, 23, 42, .03);
}

.landing-page-root[class*="lp-atmosphere-"] {
    background: var(--lp-atmosphere-bg) !important;
}

.lp-atmosphere-midnight_luxury .landing-page-middle-stage,
.lp-atmosphere-midnight_luxury .landing-block-heading h2 {
    color: #e5e7eb;
}

.lp-atmosphere-midnight_luxury .landing-block-heading p,
.lp-atmosphere-midnight_luxury .landing-faq-answer,
.lp-atmosphere-midnight_luxury .landing-testimonial-quote p {
    color: #cbd5e1;
}

.lp-depth-soft {
    --lp-stage-shadow: 0 24px 60px rgba(15, 23, 42, .09), 0 8px 24px rgba(15, 23, 42, .045);
}

.lp-depth-medium {
    --lp-stage-shadow: 0 34px 90px rgba(15, 23, 42, .13), 0 10px 30px rgba(15, 23, 42, .07);
}

.lp-depth-deep {
    --lp-stage-shadow: 0 46px 120px rgba(15, 23, 42, .18), 0 16px 44px rgba(15, 23, 42, .10);
}

.lp-card-clean .landing-featured-product-card,
.lp-card-clean .landing-testimonial-card,
.lp-card-clean .landing-faq-item {
    border-radius: 22px !important;
}

.lp-card-glass .landing-featured-product-card,
.lp-card-glass .landing-testimonial-card,
.lp-card-glass .landing-faq-item {
    background: rgba(255, 255, 255, .72) !important;
    border-color: rgba(255, 255, 255, .52) !important;
    box-shadow: var(--lp-card-shadow) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.lp-card-editorial .landing-featured-product-card,
.lp-card-editorial .landing-testimonial-card,
.lp-card-editorial .landing-faq-item {
    border-radius: 18px !important;
    box-shadow: 0 18px 40px rgba(15, 23, 42, .07) !important;
}

.lp-card-luxury .landing-featured-product-card,
.lp-card-luxury .landing-testimonial-card,
.lp-card-luxury .landing-faq-item {
    border-radius: 30px !important;
    border-color: rgba(180, 83, 9, .14) !important;
    box-shadow: 0 26px 70px rgba(15, 23, 42, .12), inset 0 1px 0 rgba(255,255,255,.68) !important;
}

.lp-rhythm-compact {
    --lp-block-y: clamp(1.55rem, 3.5vw, 2.75rem);
}

.lp-rhythm-balanced {
    --lp-block-y: clamp(2.25rem, 5vw, 4.5rem);
}

.lp-rhythm-spacious {
    --lp-block-y: clamp(3rem, 6.6vw, 6rem);
}

.lp-rhythm-editorial {
    --lp-block-y: clamp(2.75rem, 7vw, 6.5rem);
}

@media (prefers-reduced-motion: reduce) {
    .landing-page-root * {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important;
    }
}

.lp-motion-none * {
    animation: none !important;
    transition: none !important;
}

.lp-motion-subtle .landing-featured-product-card,
.lp-motion-subtle .landing-testimonial-card,
.lp-motion-medium .landing-featured-product-card,
.lp-motion-medium .landing-testimonial-card {
    transition: transform .22s ease, box-shadow .22s ease;
}

.lp-motion-subtle .landing-featured-product-card:hover,
.lp-motion-subtle .landing-testimonial-card:hover {
    transform: translateY(-3px);
}

.lp-motion-medium .landing-featured-product-card:hover,
.lp-motion-medium .landing-testimonial-card:hover {
    transform: translateY(-6px);
}

.lp-nav-minimal .landing-navigation-ribbon__inner {
    min-height: 56px !important;
    box-shadow: none !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,.70) !important;
}

.lp-nav-minimal .landing-navigation-ribbon__link,
.lp-nav-minimal .landing-navigation-ribbon__cta {
    min-height: 38px !important;
}

.lp-nav-ecosystem_ribbon .landing-navigation-ribbon__inner {
    background: linear-gradient(135deg, rgba(15,23,42,.90), rgba(30,64,175,.78)) !important;
    border-color: rgba(255,255,255,.16) !important;
}

.lp-nav-ecosystem_ribbon .landing-navigation-ribbon__link,
.lp-nav-ecosystem_ribbon .landing-navigation-ribbon__name {
    color: #f8fafc !important;
}

.lp-nav-ecosystem_ribbon .landing-navigation-ribbon__brand {
    background: rgba(255,255,255,.10) !important;
}

.hero-block-content {
    max-width: min(980px, 100%);
    width: 100%;
}

.hero-block-content.text-center {
    max-width: min(980px, 100%);
}

.hero-block-title {
    max-width: min(980px, 100%) !important;
    font-size: clamp(2.8rem, 6.2vw, 5.4rem) !important;
    line-height: 1.02;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
}

.hero-block-subtitle {
    max-width: min(820px, 100%);
}

.hero-block-content.text-center .hero-block-subtitle {
    margin-left: auto;
    margin-right: auto;
}

.lp-hero-cinematic .hero-block-shell {
    min-height: clamp(500px, 68vh, 760px) !important;
}

.lp-hero-cinematic .hero-block-overlay {
    background: linear-gradient(90deg, rgba(2,6,23,.70), rgba(2,6,23,.32) 52%, rgba(2,6,23,.62)) !important;
}

.lp-hero-editorial .hero-block-shell,
.lp-hero-product_focus .hero-block-shell {
    min-height: clamp(420px, 58vh, 640px) !important;
}

.lp-hero-editorial .hero-block-title {
    font-size: clamp(2.55rem, 5.2vw, 4.55rem) !important;
    line-height: 1.05;
}

.lp-hero-split .hero-block-content {
    max-width: min(860px, 100%);
}

.lp-hero-product_focus .hero-block-title {
    font-size: clamp(2.45rem, 5vw, 4.35rem) !important;
}

@media (max-width: 991.98px) {
    .hero-block-title {
        max-width: min(900px, 100%) !important;
        font-size: clamp(2.4rem, 7vw, 4rem) !important;
        line-height: 1.04;
    }

    .hero-block-content,
    .hero-block-content.text-center {
        max-width: min(900px, 100%);
    }
}

@media (max-width: 575.98px) {
    .hero-block-shell {
        min-height: 390px !important;
    }

    .hero-block-title {
        max-width: 100% !important;
        font-size: clamp(2.1rem, 11vw, 3.2rem) !important;
        line-height: 1.06;
    }

    .hero-block-subtitle {
        line-height: 1.55;
    }

    .lp-rhythm-spacious,
    .lp-rhythm-editorial {
        --lp-block-y: 2.35rem;
    }
}

/* =========================================================
   BizTowers Premium Landing Engine - Batch 3
   ========================================================= */

.landing-mobile-cta {
    display: none;
}

.landing-featured-product-card .product-card-body {
    gap: .35rem;
}

.landing-featured-product-card .btn-primary {
    min-height: 48px;
    border-radius: 999px;
    font-weight: 820;
    letter-spacing: 0;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .18);
}

.landing-featured-product-card .btn-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 38px rgba(37, 99, 235, .24);
}

.landing-product-price-wrap {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(15, 23, 42, .07);
}

.landing-product-current-price {
    display: inline-flex;
    align-items: baseline;
    gap: .25rem;
    color: #0f172a;
    font-size: clamp(1.15rem, 2vw, 1.35rem);
    font-weight: 920;
    line-height: 1.1;
}

.landing-product-old-price {
    color: #94a3b8;
    font-size: .88rem;
    font-weight: 760;
    text-decoration: line-through;
}

.landing-system-footer {
    position: relative;
}

.landing-system-footer::before {
    content: "";
    position: absolute;
    inset: 0 8% auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(37,99,235,.25), transparent);
}

.landing-system-footer-brand {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.landing-system-footer-brand::before {
    content: "";
    width: .55rem;
    height: .55rem;
    border-radius: 999px;
    background: currentColor;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .10);
}

@media (max-width: 767.98px) {
    .landing-navigation-ribbon {
        padding: .45rem .75rem !important;
    }

    .landing-navigation-ribbon__inner {
        min-height: auto !important;
        padding: .48rem !important;
        gap: .55rem !important;
        border-radius: 20px !important;
    }

    .landing-navigation-ribbon__brand {
        min-height: 42px !important;
        padding: .28rem .7rem .28rem .32rem !important;
    }

    .landing-navigation-ribbon__logo {
        max-height: 34px;
    }

    .landing-navigation-ribbon__name {
        font-size: .92rem !important;
    }

    .landing-navigation-ribbon__links {
        gap: .35rem !important;
    }

    .landing-navigation-ribbon__link,
    .landing-navigation-ribbon__cta {
        min-height: 36px !important;
        padding: .46rem .7rem !important;
        font-size: .82rem !important;
    }

    .landing-mobile-cta {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1040;
        display: block;
        padding: .65rem .85rem calc(.65rem + env(safe-area-inset-bottom));
        background: linear-gradient(180deg, rgba(248,250,252,0), rgba(248,250,252,.92) 22%, rgba(255,255,255,.98));
        pointer-events: none;
    }

    .landing-mobile-cta-inner {
        display: grid;
        grid-template-columns: 1fr auto;
        gap: .55rem;
        width: min(100%, 520px);
        margin: 0 auto;
        padding: .45rem;
        border-radius: 999px;
        background: rgba(15, 23, 42, .92);
        border: 1px solid rgba(255,255,255,.16);
        box-shadow: 0 20px 54px rgba(15, 23, 42, .28);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
        pointer-events: auto;
    }

    .landing-mobile-cta-primary,
    .landing-mobile-cta-secondary {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 44px;
        border-radius: 999px;
        text-decoration: none;
        font-weight: 820;
        line-height: 1;
        white-space: nowrap;
    }

    .landing-mobile-cta-primary {
        gap: .25rem;
        padding: .65rem 1rem;
        color: #0f172a;
        background: #ffffff;
    }

    .landing-mobile-cta-primary:hover {
        color: #0f172a;
    }

    .landing-mobile-cta-primary i {
        font-size: 1.25rem;
        line-height: 1;
    }

    .landing-mobile-cta-secondary {
        padding: .65rem .85rem;
        color: #dbeafe;
        background: rgba(255,255,255,.10);
        border: 1px solid rgba(255,255,255,.12);
    }

    .landing-featured-product-card .card-body {
        padding: 1rem;
    }

    .landing-featured-product-card .btn-primary {
        min-height: 46px;
    }

    .landing-product-price-wrap {
        margin-top: .75rem;
        padding-top: .75rem;
    }
}

/* =========================================================
   BizTowers Premium Landing Engine - Batch 5
   ========================================================= */

.lp-section-frame {
    position: relative;
    isolation: isolate;
}

.lp-section-frame::before {
    content: "";
    position: absolute;
    left: clamp(1rem, 5vw, 4rem);
    right: clamp(1rem, 5vw, 4rem);
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(37, 99, 235, .12), transparent);
    opacity: .72;
    pointer-events: none;
}

.lp-section-start::before,
.lp-section-frame:first-child::before,
.lp-flow-tight::before,
.lp-flow-immersive::before,
.lp-flow-paired::before {
    opacity: 0;
}

.lp-section-highlight::after {
    content: "";
    position: absolute;
    inset: 6% 4% auto;
    height: min(28vw, 320px);
    z-index: -1;
    pointer-events: none;
    background: radial-gradient(circle at 50% 0%, var(--lp-glow-a, rgba(37,99,235,.12)), transparent 68%);
    opacity: .55;
}

.lp-section-conversion::after {
    content: "";
    position: absolute;
    inset: auto 7% 8%;
    height: min(22vw, 240px);
    z-index: -1;
    pointer-events: none;
    background: radial-gradient(circle at 50% 100%, var(--lp-glow-b, rgba(20,184,166,.10)), transparent 70%);
    opacity: .62;
}

.lp-section-frame > .landing-block {
    transition: transform .24s ease, box-shadow .24s ease, background .24s ease;
}

.lp-section-frame > .landing-block > .container,
.lp-section-frame > .landing-block > .container-fluid {
    transition: max-width .24s ease, padding .24s ease;
}

.lp-width-narrow > .landing-block > .container,
.lp-width-narrow > .landing-block > .container-fluid {
    max-width: 900px !important;
}

.lp-width-standard > .landing-block > .container,
.lp-width-standard > .landing-block > .container-fluid {
    max-width: 1120px !important;
}

.lp-width-wide > .landing-block > .container,
.lp-width-wide > .landing-block > .container-fluid {
    max-width: 1320px !important;
}

.lp-width-immersive > .landing-block > .container,
.lp-width-immersive > .landing-block > .container-fluid {
    max-width: 100% !important;
}

.lp-flow-tight > .landing-block {
    padding-top: clamp(1rem, 2.5vw, 2rem) !important;
}

.lp-flow-before-products > .landing-block,
.lp-flow-before-gallery > .landing-block {
    padding-bottom: clamp(1rem, 2.5vw, 2rem) !important;
}

.lp-flow-immersive > .landing-block {
    padding-top: clamp(.5rem, 1.5vw, 1.25rem) !important;
}

.lp-flow-paired > .landing-block {
    margin-top: clamp(-1.5rem, -2vw, -.5rem);
}

.lp-section-role-trust-layer > .landing-block,
.lp-section-role-clarity-layer > .landing-block {
    background:
        radial-gradient(circle at 10% 0%, rgba(96, 165, 250, .08), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.70), rgba(248,250,252,.74));
}

.lp-section-role-conversion-layer > .landing-block,
.lp-section-role-action-layer > .landing-block {
    background:
        radial-gradient(circle at 85% 10%, rgba(37, 99, 235, .10), transparent 36%),
        linear-gradient(180deg, rgba(248,250,252,.74), rgba(255,255,255,.82));
}

.lp-product-layout-editorial .landing-featured-product-card {
    border-radius: 18px !important;
}

.lp-product-layout-editorial .landing-featured-product-title {
    font-size: clamp(1.18rem, 2vw, 1.45rem);
}

.lp-product-layout-showcase .landing-featured-product-card {
    overflow: hidden;
    box-shadow: 0 24px 70px rgba(37, 99, 235, .10) !important;
}

.lp-product-layout-showcase .landing-featured-product-media {
    aspect-ratio: 16 / 10;
}

.lp-product-layout-carousel_ready .landing-block-featured-products .row {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: .75rem;
    scroll-snap-type: x proximity;
}

.lp-product-layout-carousel_ready .landing-block-featured-products .row > [class*="col-"] {
    min-width: min(82vw, 360px);
    scroll-snap-align: start;
}

.lp-product-layout-minimal .landing-featured-product-card {
    box-shadow: 0 14px 34px rgba(15, 23, 42, .06) !important;
}

.lp-gallery-layout-mosaic .landing-block-gallery .row > [class*="col-"]:nth-child(5n+1),
.lp-gallery-layout-showcase .landing-block-gallery .row > [class*="col-"]:first-child {
    flex: 0 0 100%;
    max-width: 100%;
}

.lp-gallery-layout-mosaic .landing-gallery-card,
.lp-gallery-layout-editorial .landing-gallery-card,
.lp-gallery-layout-showcase .landing-gallery-card,
.lp-gallery-layout-luxury_grid .landing-gallery-card {
    border-radius: 24px;
    overflow: hidden;
}

.lp-gallery-layout-editorial .landing-gallery-card {
    box-shadow: 0 18px 44px rgba(15, 23, 42, .08);
}

.lp-gallery-layout-showcase .landing-gallery-card {
    box-shadow: 0 26px 70px rgba(15, 23, 42, .12);
}

.lp-gallery-layout-luxury_grid .landing-gallery-card {
    border: 1px solid rgba(180, 83, 9, .16) !important;
    box-shadow: 0 28px 78px rgba(15, 23, 42, .15);
}

.bk-composer-suggestions {
    padding: 1rem;
    border-radius: 20px;
    background:
        radial-gradient(circle at 0% 0%, rgba(96, 165, 250, .14), transparent 38%),
        linear-gradient(180deg, rgba(248,250,252,.96), rgba(255,255,255,.92));
    border: 1px solid rgba(148, 163, 184, .18);
}

.bk-composer-suggestions__title {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: .65rem;
    color: #1d4ed8;
    font-size: .82rem;
    font-weight: 820;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.bk-composer-suggestions__items {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.bk-composer-suggestions__items span,
.bk-block-composer-chips span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    min-height: 28px;
    padding: .34rem .58rem;
    border-radius: 999px;
    background: rgba(255,255,255,.86);
    border: 1px solid rgba(148, 163, 184, .18);
    color: #475569;
    font-size: .74rem;
    font-weight: 760;
}

.bk-block-composer-chips {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.bk-block-composer-chip--conversion {
    color: #1d4ed8 !important;
    background: rgba(219, 234, 254, .70) !important;
    border-color: rgba(96, 165, 250, .32) !important;
}

@keyframes lpSectionReveal {
    from {
        opacity: .001;
        transform: translateY(14px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.lp-motion-subtle .lp-section-frame > .landing-block,
.lp-motion-medium .lp-section-frame > .landing-block {
    animation: lpSectionReveal .42s ease both;
}

.lp-motion-medium .lp-section-frame > .landing-block {
    animation-duration: .58s;
}

@media (prefers-reduced-motion: reduce) {
    .lp-section-frame > .landing-block,
    .lp-section-frame > .landing-block > .container,
    .lp-section-frame > .landing-block > .container-fluid {
        transition: none !important;
    }
}

@media (max-width: 767.98px) {
    .lp-section-frame::before {
        left: 1rem;
        right: 1rem;
    }

    .lp-width-narrow > .landing-block > .container,
    .lp-width-narrow > .landing-block > .container-fluid,
    .lp-width-standard > .landing-block > .container,
    .lp-width-standard > .landing-block > .container-fluid,
    .lp-width-wide > .landing-block > .container,
    .lp-width-wide > .landing-block > .container-fluid {
        max-width: 100% !important;
    }

    .lp-flow-paired > .landing-block {
        margin-top: 0;
    }

    .lp-product-layout-carousel_ready .landing-block-featured-products .row > [class*="col-"] {
        min-width: 86vw;
    }
}

/* =========================================================
   BizTowers Premium Landing Engine - Batch 6
   ========================================================= */

.landing-page-shell,
.landing-page-shell * {
    box-sizing: border-box;
}

.landing-page-shell {
    max-width: 100%;
    overflow-x: clip;
}

.landing-page-shell img,
.landing-page-shell video,
.landing-page-shell iframe,
.landing-page-shell canvas,
.landing-page-shell svg {
    max-width: 100%;
}

.landing-page-shell a,
.landing-page-shell button,
.landing-page-shell .btn,
.landing-page-shell h1,
.landing-page-shell h2,
.landing-page-shell h3,
.landing-page-shell p,
.landing-page-shell span {
    overflow-wrap: anywhere;
}

.landing-page-shell .hero-block-title {
    max-width: min(980px, 100%) !important;
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: auto;
    text-wrap: balance;
}

.landing-page-shell .hero-block-subtitle {
    max-width: min(820px, 100%);
    overflow-wrap: anywhere;
}

.landing-page-shell .landing-navigation-ribbon,
.landing-page-shell .landing-navigation-ribbon__inner,
.landing-page-shell .landing-navigation-ribbon__links {
    min-width: 0;
    max-width: 100%;
}

.landing-page-shell .landing-navigation-ribbon__brand {
    min-width: 0;
    max-width: min(100%, 420px);
}

.landing-page-shell .landing-navigation-ribbon__name {
    min-width: 0;
    max-width: min(52vw, 320px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.landing-page-shell .landing-navigation-ribbon__link,
.landing-page-shell .landing-navigation-ribbon__cta,
.landing-page-shell .hero-block-button,
.landing-page-shell .landing-mobile-cta-primary,
.landing-page-shell .landing-mobile-cta-secondary,
.landing-page-shell .landing-system-footer-link {
    overflow-wrap: normal;
    word-break: normal;
}

.landing-page-shell .landing-navigation-ribbon__link:focus-visible,
.landing-page-shell .landing-navigation-ribbon__cta:focus-visible,
.landing-page-shell .hero-block-button:focus-visible,
.landing-page-shell .landing-featured-product-card .btn:focus-visible,
.landing-page-shell .landing-mobile-cta a:focus-visible,
.landing-page-shell .landing-system-footer-link:focus-visible,
.landing-page-shell .landing-contact-submit:focus-visible,
.landing-page-shell .landing-subscribe-form-inner .btn:focus-visible {
    outline: 3px solid rgba(37, 99, 235, .34);
    outline-offset: 3px;
    box-shadow: 0 0 0 6px rgba(37, 99, 235, .12);
}

.landing-page-shell .landing-featured-product-card {
    min-width: 0;
}

.landing-page-shell .landing-featured-product-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 2.65em;
    overflow: hidden;
    overflow-wrap: anywhere;
}

.landing-page-shell .landing-featured-product-description {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.landing-page-shell .landing-product-price-wrap,
.landing-page-shell .landing-product-card-flags {
    min-width: 0;
    flex-wrap: wrap;
}

.landing-page-shell .landing-product-current-price,
.landing-page-shell .landing-product-old-price,
.landing-page-shell .landing-discount-badge,
.landing-page-shell .landing-product-mini-badge,
.landing-page-shell .landing-product-stock {
    white-space: normal;
}

.landing-page-shell .landing-system-footer {
    padding-top: clamp(1.35rem, 4vw, 2.4rem) !important;
    padding-bottom: clamp(1.25rem, 3.4vw, 2rem) !important;
}

.landing-page-shell .landing-system-trust-strip {
    max-width: 980px;
}

.landing-page-shell .landing-system-footer-links {
    max-width: 100%;
}

.landing-preview-mode .landing-mobile-cta {
    display: none !important;
}

.landing-preview-mode.has-mobile-landing-cta {
    padding-bottom: 0 !important;
}

.landing-page-shell .lp-section-frame:empty {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .landing-page-shell *,
    .landing-page-shell *::before,
    .landing-page-shell *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .001ms !important;
    }
}

@media (max-width: 767.98px) {
    .landing-page-shell {
        overflow-x: hidden;
    }

    .landing-page-shell .landing-navigation-ribbon__inner {
        flex-wrap: wrap;
        justify-content: center !important;
    }

    .landing-page-shell .landing-navigation-ribbon__brand,
    .landing-page-shell .landing-navigation-ribbon__links {
        width: 100%;
    }

    .landing-page-shell .landing-navigation-ribbon__brand {
        justify-content: center;
        max-width: 100%;
    }

    .landing-page-shell .landing-navigation-ribbon__name {
        max-width: min(72vw, 280px);
    }

    .landing-page-shell .landing-navigation-ribbon__links {
        justify-content: center;
        overflow-x: auto;
        padding-bottom: .15rem;
        scrollbar-width: none;
    }

    .landing-page-shell .landing-navigation-ribbon__links::-webkit-scrollbar {
        display: none;
    }

    .landing-page-shell .landing-system-trust-strip {
        gap: .45rem;
        padding: .65rem;
    }

    .landing-page-shell .landing-system-footer-links {
        gap: .45rem;
    }

    .landing-page-shell .landing-system-footer-link {
        padding: .5rem .7rem;
        font-size: .8rem;
    }

    .landing-page-shell .landing-featured-product-title {
        min-height: auto;
    }
}

/* Link in bio block */
.bt-linkbio-section {
    min-height: 100vh;
    padding: 2rem 1rem;
}
.bt-linkbio-shell {
    margin: 0 auto;
}
.bt-linkbio-width-narrow {
    max-width: 440px;
}
.bt-linkbio-width-normal {
    max-width: 560px;
}
.bt-linkbio-width-wide {
    max-width: 720px;
}
.bt-linkbio-card {
    border-radius: 28px;
    padding: 1.5rem;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
}
.bt-linkbio-avatar {
    width: 104px;
    height: 104px;
    border-radius: 999px;
    object-fit: cover;
    margin: 0 auto 1rem;
}
.bt-linkbio-name {
    font-size: 1.55rem;
    font-weight: 800;
}
.bt-linkbio-socials {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    margin-top: 1.2rem;
}
.bt-linkbio-links {
    display: grid;
    gap: 0.9rem;
    margin-top: 1.5rem;
}
.bt-linkbio-link {
    display: block;
    padding: 1rem;
    text-decoration: none;
    transition: 0.15s;
}
.bt-linkbio-link:hover {
    transform: translateY(-2px);
}
.bt-linkbio-btn-rounded {
    border-radius: 18px;
}
.bt-linkbio-btn-pill {
    border-radius: 999px;
}
.bt-linkbio-btn-soft {
    border-radius: 14px;
}

/* Slideshow block */
.bt-slideshow {
    position: relative;
}
.bt-slideshow .carousel-inner,
.bt-slideshow .carousel-item,
.bt-slideshow-slide {
    height: 100%;
}
.bt-slideshow--sm .bt-slideshow-slide {
    min-height: 320px;
}
.bt-slideshow--md .bt-slideshow-slide {
    min-height: 420px;
}
.bt-slideshow--lg .bt-slideshow-slide {
    min-height: 560px;
}
.bt-slideshow--xl .bt-slideshow-slide {
    min-height: 680px;
}
.bt-slideshow-slide {
    position: relative;
    overflow: hidden;
    border-radius: 1.5rem;
    background: #0f172a;
}
.bt-slideshow--full .bt-slideshow-slide {
    border-radius: 0;
}
.bt-slideshow-media,
.bt-slideshow-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.bt-slideshow-media img {
    object-fit: cover;
}
.bt-slideshow-overlay {
    position: absolute;
    inset: 0;
}
.bt-slideshow-content {
    position: relative;
    z-index: 2;
    min-height: inherit;
    display: flex;
    align-items: center;
    padding: 2rem;
}
.bt-slideshow-content-inner {
    max-width: 820px;
    width: 100%;
}
.bt-slideshow-title {
    font-size: clamp(2rem, 4vw, 4rem);
    line-height: 1.08;
    font-weight: 800;
    margin-bottom: 1rem;
}
.bt-slideshow-subtitle {
    font-size: clamp(1rem, 1.6vw, 1.2rem);
    opacity: 0.92;
    margin-bottom: 1.5rem;
    max-width: 720px;
}
.bt-slideshow-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}
.bt-slideshow-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0.75rem 1.1rem;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 600;
    transition: transform 0.2s ease, opacity 0.2s ease;
}
.bt-slideshow-btn:hover {
    transform: translateY(-1px);
    opacity: 0.96;
}
.bt-slideshow-btn--primary {
    background: #ffffff;
    color: #111827;
}
.bt-slideshow-btn--secondary {
    background: rgba(255, 255, 255, 0.14);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.35);
}
.bt-slideshow-indicators [data-bs-target] {
    width: 10px;
    height: 10px;
    border-radius: 999px;
}
.bt-slideshow-control.carousel-control-prev,
.bt-slideshow-control.carousel-control-next {
    width: 64px;
    opacity: 1;
}
.bt-slideshow-control .bt-slideshow-control-icon {
    width: 46px;
    height: 46px;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 1.25rem;
}

@media (max-width: 767.98px) {
    .bt-slideshow--sm .bt-slideshow-slide {
        min-height: 260px;
    }
    .bt-slideshow--md .bt-slideshow-slide {
        min-height: 320px;
    }
    .bt-slideshow--lg .bt-slideshow-slide {
        min-height: 420px;
    }
    .bt-slideshow--xl .bt-slideshow-slide {
        min-height: 500px;
    }
    .bt-slideshow-content {
        padding: 1.25rem;
    }
    .bt-slideshow-title {
        margin-bottom: 0.75rem;
    }
    .bt-slideshow-subtitle {
        margin-bottom: 1rem;
    }
    .bt-slideshow-control.carousel-control-prev,
    .bt-slideshow-control.carousel-control-next {
        width: 52px;
    }
    .bt-slideshow-control .bt-slideshow-control-icon {
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 575.98px) {
    .announcement-bar-inner {
        align-items: flex-start !important;
    }
    .announcement-bar-main {
        width: 100%;
        flex-direction: column;
        align-items: stretch !important;
        gap: 0.35rem !important;
    }
    .announcement-bar-main.announcement-bar-main-center {
        text-align: center;
    }
    .announcement-bar-main.announcement-bar-main-left {
        text-align: left;
    }
    .announcement-bar-main.announcement-bar-main-right {
        text-align: right;
    }
    .announcement-bar-link {
        white-space: normal;
    }
    .announcement-bar-close-wrap {
        align-self: flex-start;
    }
    .bt-popup-overlay {
        padding: 0.9rem;
        align-items: end;
    }
    .bt-popup-box {
        max-width: 100%;
        border-radius: 18px;
    }
    .bt-popup-image {
        max-height: 190px;
    }
    .bt-popup-content {
        padding: 1.15rem 1rem 1rem;
    }
    .bt-popup-title {
        font-size: 1.2rem;
    }
    .bt-popup-body {
        font-size: 0.95rem;
    }
    .bt-popup-btn {
        width: 100%;
    }
}

/* Batch 8 final visual QA polish */
.landing-page-shell {
    overflow-x: clip;
}

.landing-page-shell .landing-page-middle-stage {
    width: min(100%, var(--lp-content-max-width, 1200px));
}

.landing-page-shell .lp-section-frame {
    margin-block: clamp(1.75rem, 4vw, 3.75rem);
}

.landing-page-shell .lp-section-frame:first-child {
    margin-top: clamp(1rem, 2.2vw, 2rem);
}

.landing-page-shell .lp-section-frame:last-of-type {
    margin-bottom: clamp(1.75rem, 4vw, 3rem);
}

.landing-page-shell .hero-block-shell {
    margin-top: 0;
}

.landing-page-shell .landing-featured-product-card,
.landing-page-shell .landing-testimonial-card,
.landing-page-shell .landing-faq-accordion .accordion-item,
.landing-page-shell .landing-gallery-card,
.landing-page-shell .landing-subscribe-panel {
    border-radius: clamp(18px, 2vw, 28px);
    border-color: rgba(148, 163, 184, .16);
}

.landing-page-shell .landing-featured-product-card,
.landing-page-shell .landing-testimonial-card {
    height: 100%;
}

.landing-page-shell .landing-featured-product-card .btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: normal;
}

.landing-page-shell .landing-featured-product-media,
.landing-page-shell .landing-gallery-card {
    overflow: hidden;
}

.landing-page-shell .landing-featured-product-title,
.landing-page-shell .landing-testimonial-name,
.landing-page-shell .landing-subscribe-title,
.landing-page-shell .landing-faq-accordion .accordion-button {
    overflow-wrap: anywhere;
}

.landing-page-shell .landing-testimonial-quote,
.landing-page-shell .landing-faq-accordion .accordion-body,
.landing-page-shell .landing-subscribe-subtitle {
    line-height: 1.65;
}

.landing-page-shell .landing-subscribe-panel {
    max-width: min(100%, 900px);
    margin-inline: auto;
}

.landing-page-shell .landing-block-gallery .landing-gallery-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100%;
    min-width: 0;
}

.landing-page-shell .landing-block-gallery .landing-gallery-card > a,
.landing-page-shell .landing-block-gallery .landing-gallery-card > button,
.landing-page-shell .landing-block-gallery .js-gallery-lightbox-trigger {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0;
    text-align: left;
}

.landing-page-shell .landing-block-gallery .landing-gallery-media-frame {
    display: block;
    width: 100%;
    min-width: 0;
    flex: 0 0 auto;
}

.landing-page-shell .landing-block-gallery .landing-gallery-media {
    display: block;
    width: 100%;
    min-width: 0;
}

.landing-page-shell .landing-block-gallery .landing-gallery-card-body {
    display: block !important;
    width: 100%;
    min-width: 0;
    flex: 0 0 auto;
    padding: .85rem 1rem 1rem;
}

.landing-page-shell .landing-block-gallery .landing-gallery-caption {
    display: block !important;
    width: 100%;
    margin: 0;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    line-height: 1.35;
    text-align: left;
}

.landing-page-shell.lp-gallery-layout-mosaic .landing-gallery-card,
.landing-page-shell.lp-gallery-layout-editorial .landing-gallery-card,
.landing-page-shell.lp-gallery-layout-showcase .landing-gallery-card,
.landing-page-shell.lp-gallery-layout-luxury_grid .landing-gallery-card {
    flex-direction: column !important;
}

.landing-page-shell .landing-system-footer {
    margin-top: clamp(2rem, 5vw, 4rem);
    padding-block: clamp(1.75rem, 4vw, 3rem);
}

.landing-page-shell.has-mobile-landing-cta {
    padding-bottom: max(96px, env(safe-area-inset-bottom, 0px) + 88px);
}

@media (max-width: 768px) {
    .landing-page-shell .lp-section-frame {
        margin-block: 1.35rem;
    }

    .landing-page-shell .landing-block {
        padding-inline: .15rem;
    }

    .landing-page-shell .hero-block-content {
        max-width: 100%;
    }

    .landing-page-shell .landing-system-footer {
        margin-top: 1.75rem;
    }

    .landing-page-shell .landing-block-gallery .row {
        display: flex !important;
        flex-wrap: wrap !important;
    }

    .landing-page-shell .landing-block-gallery .row > [class*="col-"] {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .landing-page-shell .landing-block-gallery .landing-gallery-card-body {
        padding: .8rem .9rem .95rem;
    }

    .landing-page-shell .landing-block-featured-products .row,
    .landing-page-shell .landing-block-testimonials .row,
    .landing-page-shell.lp-product-layout-carousel_ready .landing-block-featured-products .row,
    .landing-page-shell .lp-product-layout-carousel_ready .landing-block-featured-products .row {
        display: flex !important;
        flex-wrap: wrap !important;
        overflow-x: visible !important;
        scroll-snap-type: none !important;
        row-gap: 1rem;
    }

    .landing-page-shell .landing-block-featured-products .row > [class*="col-"],
    .landing-page-shell .landing-block-testimonials .row > [class*="col-"],
    .landing-page-shell.lp-product-layout-carousel_ready .landing-block-featured-products .row > [class*="col-"],
    .landing-page-shell .lp-product-layout-carousel_ready .landing-block-featured-products .row > [class*="col-"] {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        scroll-snap-align: unset !important;
    }

    .landing-page-shell .landing-featured-product-card,
    .landing-page-shell .landing-testimonial-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .landing-page-shell .landing-featured-product-card .card-body,
    .landing-page-shell .landing-featured-product-card .product-card-body,
    .landing-page-shell .landing-testimonial-card .card-body {
        min-width: 0 !important;
        padding: clamp(1rem, 4vw, 1.25rem);
    }

    .landing-page-shell .landing-featured-product-title,
    .landing-page-shell .landing-featured-product-description,
    .landing-page-shell .landing-featured-product-card .card-title,
    .landing-page-shell .landing-featured-product-card .card-text,
    .landing-page-shell .landing-product-price-wrap,
    .landing-page-shell .landing-product-current-price,
    .landing-page-shell .landing-product-old-price,
    .landing-page-shell .landing-testimonial-name,
    .landing-page-shell .landing-testimonial-meta,
    .landing-page-shell .landing-testimonial-quote,
    .landing-page-shell .landing-testimonial-quote p {
        min-width: 0 !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: auto;
    }

    .landing-page-shell .landing-testimonial-card .d-flex {
        min-width: 0;
        align-items: flex-start !important;
    }

    .landing-page-shell .landing-testimonial-card .d-flex > div:last-child {
        min-width: 0;
        flex: 1 1 auto;
    }

    .landing-page-shell .landing-testimonial-avatar,
    .landing-page-shell .landing-testimonial-avatar--fallback {
        flex: 0 0 auto;
    }
}
