        /* ============================================================
           AMA · VEDIC LETTERPRESS REDESIGN
           Scoped under .ama2 — overrides inner partial widgets via
           selectors without changing their DOM contracts (panel IDs,
           field IDs, .pf-* classes, #questionTypeGrid).
           ============================================================ */

        .ama2 {
            --ink: #1a1a1a;
            --ink-soft: #44403c;
            --ink-faint: #78716c;
            --ember: #d42020;
            --ember-deep: #7f1d1d;
            --ember-dark: #9b2c2c;
            --amber: #b45309;
            --cream: #fef3c7;
            --cream-soft: #faf7f5;
            --parchment: #fdf8ed;
            --line: #f5e8d2;
            --line-strong: #e8d7b5;
            --display: 'Exo 2', sans-serif;
            --sans: 'Poppins', sans-serif;
            --mono: 'IBM Plex Mono', 'Courier New', monospace;
            --deva: 'Tiro Devanagari Sanskrit', 'Noto Serif Devanagari', 'Mangal', var(--display);

            color: var(--ink);
            font-family: var(--sans);
            position: relative;
        }

        /* ============================================================
           HERO
           ============================================================ */
        .ama2-hero {
            max-width: 780px;
            margin: 0 auto;
            padding: 4rem 1.5rem 2rem;
            text-align: center;
            position: relative;
        }

        .ama2-hero::before {
            content: '';
            position: absolute;
            top: 12px;
            left: 50%;
            width: 360px;
            height: 360px;
            transform: translateX(-50%);
            background-image:
                radial-gradient(circle at 50% 50%, transparent 168px, var(--ember) 168px, var(--ember) 169px, transparent 170px),
                radial-gradient(circle at 50% 50%, transparent 120px, var(--amber) 120px, var(--amber) 121px, transparent 122px),
                radial-gradient(circle at 50% 50%, transparent 72px, var(--ember-dark) 72px, var(--ember-dark) 73px, transparent 74px);
            opacity: 0.08;
            pointer-events: none;
            z-index: 0;
        }

        .ama2-hero > * { position: relative; z-index: 1; }

        .ama2-eyebrow {
            font-family: var(--mono);
            font-size: 0.75rem;
            letter-spacing: 0.32em;
            text-transform: uppercase;
            color: var(--ember);
            display: inline-flex;
            align-items: center;
            gap: 0.75rem;
            margin-bottom: 1.5rem;
        }

        .ama2-eyebrow::before,
        .ama2-eyebrow::after {
            content: '✦';
            font-size: 0.625rem;
            color: var(--amber);
        }

        .ama2-title {
            font-family: var(--display);
            font-weight: 600;
            font-style: normal;
            font-size: clamp(2.25rem, 5vw + 0.5rem, 3.75rem);
            line-height: 1.08;
            color: var(--ink);
            margin: 0 0 1rem;
            letter-spacing: -0.012em;
        }

        .ama2-title .ink-accent {
            color: var(--ember);
            font-style: normal;
        }

        .ama2-rule {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.875rem;
            margin: 1.25rem auto 1.5rem;
            color: var(--ember);
        }

        .ama2-rule .ama2-rule-line {
            height: 1px;
            background: currentColor;
            width: 80px;
            opacity: 0.55;
        }

        .ama2-rule .ama2-rule-star {
            font-size: 0.75rem;
            letter-spacing: 0.4em;
            color: var(--amber);
        }

        .ama2-sub {
            font-family: var(--sans);
            font-size: 1.0625rem;
            line-height: 1.65;
            color: var(--ink-soft);
            max-width: 58ch;
            margin: 0 auto;
        }

        /* Hero price chip — sits between the rule ornament and the sub
           description so buyers see the price before committing to the form.
           Letterpress styling: parchment + cream gradient, crimson border,
           display-serif amount with mono caps for the prefix label. */
        .ama2-price-chip {
            display: inline-flex;
            align-items: baseline;
            justify-content: center;
            gap: 0.55rem;
            margin: 0 auto 0.4rem;
            padding: 0.45rem 1.1rem;
            background: linear-gradient(135deg, rgba(254, 243, 199, 0.55) 0%, rgba(212, 32, 32, 0.06) 100%);
            border: 1px solid rgba(194, 65, 12, 0.4);
            border-radius: 999px;
            box-shadow: 0 2px 8px -3px rgba(212, 32, 32, 0.18);
        }
        .ama2-price-chip__label {
            font-family: var(--mono);
            font-size: 0.65rem;
            letter-spacing: 0.22em;
            text-transform: uppercase;
            color: #c2410c;
            font-weight: 700;
        }
        .ama2-price-chip__amount {
            font-family: var(--display);
            font-size: 1.4rem;
            font-weight: 700;
            color: #2a1408;
            line-height: 1;
        }
        .ama2-price-chip__suffix {
            font-family: var(--sans);
            font-size: 0.75rem;
            color: #5a4434;
            letter-spacing: 0.02em;
        }
        @media (max-width: 600px) {
            .ama2-price-chip {
                gap: 0.4rem;
                padding: 0.4rem 0.85rem;
            }
            .ama2-price-chip__amount { font-size: 1.2rem; }
            .ama2-price-chip__suffix { font-size: 0.7rem; }
            .ama2-price-chip__label  { font-size: 0.6rem; letter-spacing: 0.18em; }
        }

        /* ============================================================
           STEP INDICATOR — override .pf-steps shell, keep class contract
           ============================================================ */
        .ama2-indicator {
            max-width: 780px;
            margin: 1.5rem auto 2.5rem;
            padding: 0 2rem;
        }

        .ama2 .pf-steps {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.25rem;
            background: transparent;
            border: none;
            padding: 0;
        }

        .ama2 .pf-step-dot {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 0.55rem;
            flex-shrink: 0;
            position: relative;
        }

        .ama2 .pf-step-dot-circle {
            width: 46px;
            height: 46px;
            border-radius: 50%;
            border: 1px solid var(--ember);
            background: var(--cream-soft);
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            transition: all 0.35s ease;
            box-shadow: 0 0 0 4px var(--cream-soft), 0 0 0 5px var(--line-strong);
        }

        .ama2 .pf-step-dot-number {
            font-family: var(--deva);
            font-size: 1.25rem;
            font-weight: 400;
            color: var(--ember);
            line-height: 1;
        }

        .ama2 .pf-step-dot--active .pf-step-dot-circle {
            background: var(--ember);
            border-color: var(--ember-deep);
            box-shadow:
                0 0 0 4px var(--cream-soft),
                0 0 0 5px var(--ember),
                0 6px 18px rgba(212, 32, 32, 0.22);
            transform: translateY(-1px);
        }

        .ama2 .pf-step-dot--active .pf-step-dot-number { color: var(--cream); }

        .ama2 .pf-step-dot--completed .pf-step-dot-circle {
            background: var(--cream);
            border-color: var(--ember-dark);
        }

        .ama2 .pf-step-dot--completed .pf-step-dot-number { color: var(--ember-dark); }

        .ama2 .pf-step-dot-label {
            font-family: var(--mono);
            font-size: 0.625rem;
            letter-spacing: 0.18em;
            text-transform: uppercase;
            color: var(--ink-faint);
        }

        .ama2 .pf-step-dot--active .pf-step-dot-label {
            color: var(--ember);
            font-weight: 600;
        }

        .ama2 .pf-step-connector {
            flex: 1;
            height: 1px;
            background: repeating-linear-gradient(to right, var(--line-strong) 0 4px, transparent 4px 8px);
            margin: 0 0 26px;
            position: relative;
            min-width: 20px;
        }

        /* ============================================================
           STAGE GRID
           ============================================================ */
        .ama2-stage {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 340px;
            gap: 2rem;
            max-width: 1100px;
            margin: 0 auto;
            padding: 0 1.5rem 4rem;
        }

        @media (max-width: 960px) {
            .ama2-stage { grid-template-columns: 1fr; gap: 1.5rem; padding: 0 1rem 2.5rem; }
        }

        /* ============================================================
           BREADCRUMB
           ============================================================ */
        .ama2-crumb {
            font-family: var(--mono);
            font-size: 0.6875rem;
            letter-spacing: 0.16em;
            text-transform: uppercase;
            color: var(--ink-faint);
            margin: 0 0 1.25rem;
        }

        .ama2-crumb a { color: var(--ink-faint); text-decoration: none; transition: color 0.2s; }
        .ama2-crumb a:hover { color: var(--ember); }
        .ama2-crumb .sep { margin: 0 0.5rem; color: var(--line-strong); }

        /* Top-of-page breadcrumb (sits above hero) */
        .ama2-crumb--top {
            max-width: 1100px;
            margin: 0 auto;
            padding: 1.25rem 1.5rem 0;
        }

        /* ============================================================
           FRAMED PANEL — letterpress double border
           ============================================================ */
        .ama2 .pf-panel.ama2-frame {
            background: var(--cream-soft);
            border: 1px solid var(--line-strong);
            padding: 0;
            margin-bottom: 1.5rem;
            position: relative;
            box-shadow: 0 2px 14px -6px rgba(127, 29, 29, 0.18);
        }

        .ama2-frame::before {
            content: '';
            position: absolute;
            inset: 6px;
            border: 1px solid var(--line);
            pointer-events: none;
        }

        .ama2-frame__head {
            padding: 2rem 2rem 0.5rem;
            text-align: center;
            position: relative;
        }

        .ama2-frame__eyebrow {
            font-family: var(--mono);
            font-size: 0.625rem;
            letter-spacing: 0.22em;
            text-transform: uppercase;
            color: var(--ember);
            display: inline-flex;
            align-items: center;
            gap: 0.625rem;
        }

        .ama2-frame__eyebrow .num {
            font-family: var(--deva);
            font-size: 0.875rem;
            color: var(--amber);
            letter-spacing: 0;
        }

        .ama2-frame__title {
            font-family: var(--display);
            font-style: normal;
            font-weight: 600;
            font-size: 1.625rem;
            color: var(--ink);
            margin: 0.6rem 0 0.4rem;
            line-height: 1.15;
        }

        .ama2-frame__caption {
            font-family: var(--sans);
            font-size: 0.9375rem;
            color: var(--ink-soft);
            max-width: 52ch;
            margin: 0 auto;
            line-height: 1.55;
        }

        .ama2-frame__body {
            padding: 1.25rem 2rem 2rem;
            position: relative;
        }

        /* Neutralise nested .pf-card chrome inside the frame */
        .ama2 .pf-panel .pf-card,
        .ama2 .pf-panel .pf-card-body {
            background: transparent;
            border: none;
            box-shadow: none;
            padding: 0;
            margin: 0;
        }

        .ama2 .pf-panel .pf-card-header { display: none; }

        /* ============================================================
           INPUTS — cream-fill, warm border, serif placeholder
           ============================================================ */
        .ama2 .pf-input,
        .ama2 textarea.pf-input,
        .ama2 .pf-field input:not([type="radio"]):not([type="checkbox"]),
        .ama2 .pf-field select {
            background: #ffffff;
            border: 1px solid var(--line-strong);
            border-radius: 2px;
            padding: 0.8rem 0.95rem;
            font-family: var(--sans);
            font-size: 0.9375rem;
            color: var(--ink);
            transition: border-color 0.2s, box-shadow 0.2s;
            width: 100%;
            box-sizing: border-box;
        }

        .ama2 .pf-input:focus,
        .ama2 textarea.pf-input:focus,
        .ama2 .pf-field input:focus,
        .ama2 .pf-field select:focus {
            outline: none;
            border-color: var(--ember);
            box-shadow: 0 0 0 3px rgba(212, 32, 32, 0.08);
        }

        .ama2 .pf-input::placeholder,
        .ama2 textarea.pf-input::placeholder {
            font-family: var(--display);
            font-style: normal;
            color: var(--ink-faint);
            opacity: 0.75;
        }

        .ama2 .pf-label {
            font-family: var(--mono);
            font-size: 0.6875rem;
            letter-spacing: 0.16em;
            text-transform: uppercase;
            color: var(--ink);
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 0.4rem;
            margin-bottom: 0.4rem;
        }

        .ama2 .pf-label i { color: var(--ember); font-size: 0.875rem; }

        .ama2 .pf-field { margin-bottom: 1.1rem; }

        .ama2 .pf-section-label {
            font-family: var(--mono);
            font-size: 0.625rem;
            letter-spacing: 0.22em;
            text-transform: uppercase;
            color: var(--ember);
            margin: 0 0 0.75rem;
            display: flex;
            align-items: center;
            gap: 0.625rem;
        }

        .ama2 .pf-section-label::before,
        .ama2 .pf-section-label::after {
            content: '';
            height: 1px;
            background: var(--line-strong);
            flex: 1;
        }

        /* ============================================================
           QUESTION TYPE GRID (#questionTypeGrid .pf-area-card)
           ============================================================ */
        .ama2 #questionTypeGrid {
            gap: 0.75rem !important;
        }

        .ama2 #questionTypeGrid .pf-area-card {
            background: #ffffff;
            border: 1px solid var(--line-strong) !important;
            border-radius: 2px !important;
            padding: 1.25rem 1.125rem !important;
            cursor: pointer;
            transition: all 0.2s;
            position: relative;
            text-align: center;
        }

        .ama2 #questionTypeGrid .pf-area-card.selected {
            border-color: var(--ember) !important;
            background: var(--cream);
            box-shadow: 0 4px 16px rgba(212, 32, 32, 0.08);
        }

        .ama2 #questionTypeGrid .pf-area-check {
            position: absolute;
            top: 0.55rem;
            right: 0.55rem;
            width: 22px;
            height: 22px;
            border-radius: 50%;
            background: var(--ember);
            color: var(--cream);
            opacity: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 0.75rem;
            transition: opacity 0.2s;
        }

        .ama2 #questionTypeGrid .pf-area-card.selected .pf-area-check { opacity: 1; }

        .ama2 #questionTypeGrid .pf-area-icon {
            color: var(--ember);
            font-size: 1.5rem !important;
        }

        .ama2 #questionTypeGrid .pf-area-name {
            font-family: var(--display);
            font-style: normal;
            font-size: 1.0625rem;
            color: var(--ink);
            margin-top: 0.5rem;
            font-weight: 400;
        }

        /* ============================================================
           NAV BUTTONS
           ============================================================ */
        .ama2-nav.pf-nav {
            display: flex;
            justify-content: space-between;
            gap: 1rem;
            margin-top: 0.5rem;
        }

        .ama2 .pf-nav-btn {
            border-radius: 2px;
            padding: 0.9rem 1.75rem;
            font-family: var(--mono);
            font-weight: 600;
            font-size: 0.75rem;
            letter-spacing: 0.18em;
            text-transform: uppercase;
            transition: all 0.2s;
            cursor: pointer;
            border: 1px solid transparent;
            display: inline-flex;
            align-items: center;
            gap: 0.6rem;
        }

        .ama2 .pf-nav-btn--back {
            background: transparent;
            color: var(--ink-soft);
            border-color: var(--line-strong);
        }

        .ama2 .pf-nav-btn--back:hover {
            background: var(--cream);
            color: var(--ember);
            border-color: var(--ember);
        }

        .ama2 .pf-nav-btn--next {
            background: var(--ember);
            color: var(--cream);
            margin-left: auto;
            box-shadow: 0 6px 20px -6px rgba(212, 32, 32, 0.4);
            border-color: var(--ember);
        }

        .ama2 .pf-nav-btn--next:hover {
            background: var(--ember-deep);
            box-shadow: 0 8px 24px -6px rgba(212, 32, 32, 0.5);
            transform: translateY(-1px);
        }

        /* ============================================================
           SIDEBAR · INFO BROADSIDE
           ============================================================ */
        .ama2-broadside {
            background: var(--cream);
            border: 1px solid var(--line-strong);
            padding: 2rem 1.5rem 1.75rem;
            position: relative;
            box-shadow: 0 2px 14px -6px rgba(127, 29, 29, 0.15);
        }

        .ama2-broadside::before {
            content: '';
            position: absolute;
            inset: 5px;
            border: 1px solid var(--line);
            pointer-events: none;
        }

        .ama2-broadside-crest {
            width: 64px;
            height: 64px;
            margin: 0 auto 1.25rem;
            border: 1px solid var(--ember);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.5rem;
            color: var(--ember);
            background: var(--cream-soft);
            position: relative;
        }

        .ama2-broadside-crest::before {
            content: '';
            position: absolute;
            inset: -6px;
            border: 1px dashed var(--line-strong);
            border-radius: 50%;
        }

        .ama2-broadside-title {
            font-family: var(--display);
            font-style: normal;
            font-weight: 600;
            font-size: 1.375rem;
            color: var(--ink);
            text-align: center;
            margin: 0 0 0.5rem;
            line-height: 1.25;
        }

        .ama2-broadside-desc {
            font-family: var(--sans);
            font-size: 0.875rem;
            line-height: 1.6;
            color: var(--ink-soft);
            text-align: center;
            margin: 0 0 1.5rem;
        }

        .ama2-stats {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            border-top: 1px solid var(--line-strong);
            border-bottom: 1px solid var(--line-strong);
            padding: 0.9rem 0;
            margin-bottom: 1.5rem;
        }

        .ama2-stat { text-align: center; position: relative; }

        .ama2-stat + .ama2-stat::before {
            content: '';
            position: absolute;
            left: 0;
            top: 20%;
            height: 60%;
            width: 1px;
            background: var(--line-strong);
        }

        .ama2-stat-value {
            font-family: var(--display);
            font-style: normal;
            font-size: 1.125rem;
            color: var(--ember);
            font-weight: 700;
            line-height: 1;
        }

        .ama2-stat-label {
            font-family: var(--mono);
            font-size: 0.5625rem;
            letter-spacing: 0.14em;
            text-transform: uppercase;
            color: var(--ink-faint);
            margin-top: 0.3rem;
        }

        .ama2-side-heading {
            font-family: var(--mono);
            font-size: 0.625rem;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: var(--ember);
            margin: 1.25rem 0 0.75rem;
            text-align: center;
            display: flex;
            align-items: center;
            gap: 0.5rem;
            justify-content: center;
        }

        .ama2-side-heading::before,
        .ama2-side-heading::after {
            content: '';
            height: 1px;
            background: var(--line-strong);
            flex: 1;
        }

        .ama2-broadside-list {
            list-style: none;
            padding: 0;
            margin: 0;
        }

        .ama2-broadside-list li {
            font-family: var(--sans);
            font-size: 0.8125rem;
            color: var(--ink-soft);
            padding: 0.55rem 0;
            border-bottom: 1px dashed var(--line);
            display: flex;
            align-items: flex-start;
            gap: 0.6rem;
            line-height: 1.5;
        }

        .ama2-broadside-list li::before {
            content: '✦';
            color: var(--amber);
            flex-shrink: 0;
            font-size: 0.625rem;
            margin-top: 5px;
        }

        .ama2-broadside-list li:last-child { border-bottom: none; }

        .ama2-broadside-list--example li { font-style: normal; font-family: var(--display); font-size: 0.8125rem; }

        /* ============================================================
           SIDEBAR · SEAL / ORDER SUMMARY
           ============================================================ */
        .ama2-seal {
            background: #ffffff;
            border: 2px solid var(--ember);
            padding: 1.75rem 1.5rem 1.25rem;
            position: relative;
            box-shadow: 0 4px 18px -6px rgba(127, 29, 29, 0.28);
        }

        .ama2-seal::before {
            content: '';
            position: absolute;
            inset: 6px;
            border: 1px dashed var(--ember);
            pointer-events: none;
        }

        .ama2-seal-header {
            text-align: center;
            border-bottom: 1px dashed var(--line-strong);
            padding-bottom: 0.9rem;
            margin-bottom: 1rem;
        }

        .ama2-seal-eyebrow {
            font-family: var(--mono);
            font-size: 0.625rem;
            letter-spacing: 0.24em;
            text-transform: uppercase;
            color: var(--ember);
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
        }

        .ama2-seal-eyebrow::before,
        .ama2-seal-eyebrow::after { content: '✦'; font-size: 0.5rem; color: var(--amber); }

        .ama2-seal-title {
            font-family: var(--display);
            font-style: normal;
            font-weight: 600;
            font-size: 1.25rem;
            color: var(--ink);
            margin: 0.35rem 0 0;
            line-height: 1.2;
        }

        .ama2-seal-row {
            display: flex;
            justify-content: space-between;
            align-items: baseline;
            padding: 0.55rem 0;
            gap: 1rem;
        }

        .ama2-seal-row + .ama2-seal-row {
            border-top: 1px dotted var(--line);
        }

        .ama2-seal-label {
            font-family: var(--mono);
            font-size: 0.625rem;
            letter-spacing: 0.16em;
            text-transform: uppercase;
            color: var(--ink-faint);
            flex-shrink: 0;
        }

        .ama2-seal-value {
            font-family: var(--display);
            color: var(--ink);
            text-align: right;
            font-size: 0.9375rem;
            word-break: break-word;
            max-width: 60%;
            line-height: 1.35;
        }

        .ama2-seal-value--wrap { font-style: normal; }

        .ama2-seal-footer {
            text-align: center;
            padding-top: 0.9rem;
            margin-top: 0.75rem;
            border-top: 1px dashed var(--line-strong);
            font-family: var(--mono);
            font-size: 0.625rem;
            letter-spacing: 0.18em;
            text-transform: uppercase;
            color: var(--ember);
            display: flex;
            align-items: center;
            gap: 0.5rem;
            justify-content: center;
        }

        .ama2-seal-footer i { color: var(--amber); }

        /* ============================================================
           BELOW-FOLD CONTENT · SEO
           ============================================================ */
        .ama2-scroll {
            max-width: 1280px;
            margin: 3rem auto 0;
            padding: 0 1.5rem 4rem;
            position: relative;
        }

        .ama2-bigrule {
            display: flex;
            align-items: center;
            gap: 1rem;
            margin: 0 0 3rem;
            color: var(--amber);
        }

        .ama2-bigrule::before,
        .ama2-bigrule::after {
            content: '';
            flex: 1;
            height: 1px;
            background: var(--line-strong);
        }

        .ama2-bigrule-marks {
            font-family: var(--mono);
            font-size: 0.75rem;
            letter-spacing: 0.8rem;
            color: var(--amber);
            padding-left: 0.8rem;
        }

        .ama2-section {
            margin-bottom: 4rem;
        }

        .ama2-sec-label {
            font-family: var(--mono);
            font-size: 0.6875rem;
            letter-spacing: 0.28em;
            text-transform: uppercase;
            color: var(--ember);
            margin-bottom: 1rem;
            text-align: center;
            display: inline-flex;
            align-items: center;
            gap: 0.75rem;
            width: 100%;
            justify-content: center;
        }

        .ama2-sec-label::before,
        .ama2-sec-label::after {
            content: '✦';
            color: var(--amber);
            font-size: 0.625rem;
        }

        .ama2-sec-title {
            font-family: var(--display);
            font-style: normal;
            font-weight: 600;
            font-size: 2.25rem;
            color: var(--ink);
            text-align: center;
            margin: 0 0 1rem;
            line-height: 1.15;
            letter-spacing: -0.01em;
        }

        .ama2-sec-title em { font-style: normal; color: var(--ember); }

        .ama2-sec-desc {
            font-family: var(--sans);
            font-size: 1.0625rem;
            line-height: 1.75;
            color: var(--ink-soft);
            max-width: 62ch;
            margin: 0 auto 2rem;
            text-align: center;
        }

        .ama2-sec-desc + .ama2-sec-desc { margin-top: -1.25rem; }

        /* Inline question examples */
        .ama2-examples {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
            gap: 0.75rem;
            margin: 2rem 0 0;
        }

        .ama2-example {
            font-family: var(--display);
            font-style: normal;
            font-size: 0.9375rem;
            color: var(--ink);
            background: var(--cream-soft);
            border-left: 2px solid var(--ember);
            padding: 0.85rem 1rem;
            line-height: 1.5;
            position: relative;
        }

        .ama2-example::before {
            content: '“';
            font-family: var(--display);
            font-size: 1.75rem;
            color: var(--amber);
            position: absolute;
            top: 0.2rem;
            right: 0.75rem;
            line-height: 1;
        }

        /* Timeline (How it works) */
        .ama2-timeline {
            margin: 2.5rem 0 0;
            position: relative;
        }

        .ama2-timeline::before {
            content: '';
            position: absolute;
            left: 28px;
            top: 28px;
            bottom: 28px;
            width: 1px;
            background: repeating-linear-gradient(to bottom, var(--ember) 0 4px, transparent 4px 8px);
            opacity: 0.6;
        }

        .ama2-timeline-step {
            display: flex;
            gap: 1.25rem;
            padding: 1rem 0;
            align-items: flex-start;
            position: relative;
        }

        .ama2-timeline-num {
            flex-shrink: 0;
            width: 58px;
            height: 58px;
            border: 1px solid var(--ember);
            border-radius: 50%;
            background: var(--cream-soft);
            color: var(--ember);
            font-family: var(--deva);
            font-size: 1.375rem;
            font-weight: 400;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            box-shadow: 0 0 0 4px var(--cream-soft), 0 0 0 5px var(--line);
            z-index: 1;
        }

        .ama2-timeline-body h4 {
            font-family: var(--display);
            font-style: normal;
            font-weight: 400;
            font-size: 1.1875rem;
            color: var(--ink);
            margin: 0.35rem 0 0.4rem;
            line-height: 1.25;
        }

        .ama2-timeline-body p {
            font-family: var(--sans);
            font-size: 0.9375rem;
            color: var(--ink-soft);
            line-height: 1.65;
            margin: 0;
        }

        /* Output grid — "What you get" */
        .ama2-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
            gap: 1rem;
            margin: 2rem 0 0;
        }

        .ama2-card {
            background: var(--cream-soft);
            border: 1px solid var(--line-strong);
            padding: 1.5rem;
            position: relative;
        }

        .ama2-card::before {
            content: '';
            position: absolute;
            inset: 5px;
            border: 1px solid var(--line);
            pointer-events: none;
        }

        .ama2-card-icon {
            width: 44px;
            height: 44px;
            border: 1px solid var(--ember);
            border-radius: 50%;
            background: var(--cream);
            color: var(--ember);
            font-size: 1.125rem;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 0.85rem;
        }

        .ama2-card h4 {
            font-family: var(--display);
            font-style: normal;
            font-weight: 400;
            font-size: 1.0625rem;
            color: var(--ink);
            margin: 0 0 0.5rem;
        }

        .ama2-card p {
            font-family: var(--sans);
            font-size: 0.875rem;
            color: var(--ink-soft);
            line-height: 1.6;
            margin: 0;
        }

        /* Advantages (Why) */
        .ama2-advantages {
            margin: 2rem 0 0;
            background: var(--cream-soft);
            border: 1px solid var(--line-strong);
            padding: 1rem 1.5rem;
            position: relative;
        }

        .ama2-advantages::before {
            content: '';
            position: absolute;
            inset: 6px;
            border: 1px solid var(--line);
            pointer-events: none;
        }

        .ama2-advantage {
            display: grid;
            grid-template-columns: 60px 1fr;
            gap: 1.25rem;
            padding: 1.4rem 0.5rem;
            align-items: flex-start;
            border-bottom: 1px dashed var(--line-strong);
        }

        .ama2-advantage:last-child { border-bottom: none; }

        .ama2-advantage-icon {
            width: 52px;
            height: 52px;
            border: 1px solid var(--ember);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--ember);
            font-size: 1.375rem;
            background: var(--cream);
        }

        .ama2-advantage h4 {
            font-family: var(--display);
            font-style: normal;
            font-weight: 400;
            font-size: 1.1875rem;
            margin: 0.3rem 0 0.5rem;
            color: var(--ink);
        }

        .ama2-advantage p {
            font-family: var(--sans);
            font-size: 0.9375rem;
            color: var(--ink-soft);
            line-height: 1.65;
            margin: 0;
        }

        /* Quality stats block */
        .ama2-quality {
            background: var(--cream);
            border: 1px solid var(--line-strong);
            padding: 2.25rem 1.5rem;
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 1rem;
            position: relative;
            margin: 2rem 0 0;
        }

        .ama2-quality::before {
            content: '';
            position: absolute;
            inset: 6px;
            border: 1px solid var(--line);
            pointer-events: none;
        }

        .ama2-quality-item {
            text-align: center;
            position: relative;
        }

        .ama2-quality-item + .ama2-quality-item::before {
            content: '';
            position: absolute;
            left: 0;
            top: 15%;
            height: 70%;
            width: 1px;
            background: var(--line-strong);
        }

        .ama2-quality-value {
            font-family: var(--display);
            font-style: normal;
            font-size: 2.25rem;
            color: var(--ember);
            font-weight: 700;
            line-height: 1;
        }

        .ama2-quality-label {
            font-family: var(--mono);
            font-size: 0.6875rem;
            letter-spacing: 0.14em;
            text-transform: uppercase;
            color: var(--ink-soft);
            margin-top: 0.5rem;
            line-height: 1.35;
        }

        /* FAQ */
        .ama2-faq { margin: 2rem 0 0; }

        .ama2-faq details {
            border-top: 1px solid var(--line-strong);
            padding: 1.4rem 0;
        }

        .ama2-faq details:last-of-type {
            border-bottom: 1px solid var(--line-strong);
        }

        .ama2-faq summary {
            list-style: none;
            cursor: pointer;
            font-family: var(--display);
            font-style: normal;
            font-weight: 400;
            font-size: 1.0625rem;
            color: var(--ink);
            padding-right: 2.5rem;
            position: relative;
            line-height: 1.35;
            transition: color 0.2s;
        }

        .ama2-faq summary:hover { color: var(--ember); }

        .ama2-faq summary::-webkit-details-marker { display: none; }

        .ama2-faq summary::after {
            content: '+';
            position: absolute;
            right: 0;
            top: -2px;
            font-family: var(--mono);
            font-size: 1.5rem;
            font-weight: 300;
            color: var(--ember);
            transition: transform 0.2s;
            line-height: 1;
        }

        .ama2-faq details[open] summary::after { content: '−'; }

        .ama2-faq-answer {
            margin-top: 0.9rem;
            font-family: var(--sans);
            font-size: 0.9375rem;
            line-height: 1.75;
            color: var(--ink-soft);
            padding-right: 2rem;
        }

        /* Related features */
        .ama2-related {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
            gap: 0.75rem;
            margin: 2rem 0 0;
        }

        .ama2-related-card {
            display: flex;
            align-items: center;
            gap: 0.85rem;
            padding: 1rem 1.25rem;
            background: var(--cream-soft);
            border: 1px solid var(--line-strong);
            text-decoration: none;
            color: var(--ink);
            transition: all 0.2s;
            position: relative;
        }

        .ama2-related-card::before {
            content: '';
            position: absolute;
            inset: 4px;
            border: 1px solid var(--line);
            pointer-events: none;
            transition: border-color 0.2s;
        }

        .ama2-related-card:hover {
            border-color: var(--ember);
            background: var(--cream);
            color: var(--ember);
            transform: translateY(-1px);
        }

        .ama2-related-card:hover::before { border-color: var(--line); }

        .ama2-related-card i {
            color: var(--ember);
            font-size: 1.125rem;
            position: relative;
            z-index: 1;
        }

        .ama2-related-card span {
            font-family: var(--display);
            font-style: normal;
            font-size: 1rem;
            position: relative;
            z-index: 1;
        }

        /* Rich variant — title + description, no icon */
        .ama2-related-card--rich {
            flex-direction: column;
            align-items: flex-start;
            text-align: left;
            padding: 1rem 1.25rem;
            gap: 0.25rem;
        }
        .ama2-related-card--rich .rc-title {
            font-family: var(--display);
            font-size: 1rem;
            color: var(--ink);
            font-weight: 500;
            position: relative;
            z-index: 1;
        }
        .ama2-related-card--rich .rc-desc {
            font-family: var(--sans);
            font-size: 0.8125rem;
            color: var(--ink-soft);
            line-height: 1.5;
            position: relative;
            z-index: 1;
        }
        .ama2-related-card--rich:hover .rc-title { color: var(--ember); }

        /* Single-form layout — for simple non-wizard form pages */
        .ama2-single {
            max-width: 720px;
            margin: 0 auto;
            padding: 0 1.5rem 4rem;
        }
        @media (max-width: 768px) {
            .ama2-single { padding: 0 1rem 2.5rem; }
        }

        /* Mahadasha-style badge inside ama2-card-icon */
        .ama2-card-icon--text {
            font-family: var(--display);
            font-weight: 700;
            font-size: 0.9375rem;
            letter-spacing: 0;
        }
        .ama2-card-meta {
            font-family: var(--mono);
            font-size: 0.625rem;
            letter-spacing: 0.16em;
            text-transform: uppercase;
            color: var(--ember);
            margin: -0.15rem 0 0.5rem;
        }

        /* CTA banner — for pages that have a "start now" call-out */
        .ama2-cta {
            margin: 3rem 0 0;
            background: var(--cream);
            border: 1px solid var(--line-strong);
            padding: 2.5rem 2rem;
            text-align: center;
            position: relative;
        }

        .ama2-cta::before {
            content: '';
            position: absolute;
            inset: 6px;
            border: 1px solid var(--line);
            pointer-events: none;
        }

        .ama2-cta h3 {
            font-family: var(--display);
            font-style: normal;
            font-weight: 600;
            font-size: 1.625rem;
            color: var(--ink);
            margin: 0 0 0.6rem;
            line-height: 1.2;
            position: relative;
            z-index: 1;
        }

        .ama2-cta p {
            font-family: var(--sans);
            font-size: 0.9375rem;
            color: var(--ink-soft);
            line-height: 1.6;
            max-width: 52ch;
            margin: 0 auto 1.5rem;
            position: relative;
            z-index: 1;
        }

        .ama2-cta-btn {
            display: inline-flex;
            align-items: center;
            gap: 0.6rem;
            background: var(--ember);
            color: var(--cream);
            border: 1px solid var(--ember);
            padding: 0.9rem 1.75rem;
            font-family: var(--mono);
            font-weight: 600;
            font-size: 0.75rem;
            letter-spacing: 0.18em;
            text-transform: uppercase;
            text-decoration: none;
            transition: all 0.2s;
            position: relative;
            z-index: 1;
            box-shadow: 0 6px 20px -6px rgba(212, 32, 32, 0.4);
        }

        .ama2-cta-btn:hover {
            background: var(--ember-deep);
            color: var(--cream);
            transform: translateY(-1px);
            box-shadow: 0 8px 24px -6px rgba(212, 32, 32, 0.5);
        }

        /* Reveal animation */
        .ama2-reveal {
            opacity: 0;
            transform: translateY(16px);
            transition: opacity 0.7s ease, transform 0.7s ease;
        }

        .ama2-reveal.is-visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* Mobile polish */
        @media (max-width: 768px) {
            /* Hero — compact so form stays close to top */
            .ama2-hero { padding: 1.5rem 1rem 0.75rem; max-width: 100%; }
            .ama2-hero::before { width: 220px; height: 220px; top: 4px; opacity: 0.06; }
            .ama2-eyebrow { font-size: 0.625rem; letter-spacing: 0.24em; gap: 0.5rem; margin-bottom: 0.6rem; }
            .ama2-eyebrow::before, .ama2-eyebrow::after { font-size: 0.5rem; }
            .ama2-title { font-size: 1.625rem; line-height: 1.12; margin-bottom: 0.5rem; letter-spacing: -0.01em; }
            .ama2-rule { margin: 0.6rem auto 0.6rem; gap: 0.5rem; }
            .ama2-rule .ama2-rule-line { width: 36px; }
            .ama2-rule .ama2-rule-star { font-size: 0.6rem; letter-spacing: 0.2em; }
            .ama2-sub { font-size: 0.875rem; line-height: 1.5; max-width: 100%; }

            /* Step indicator — centered cluster, fixed gap (no flex stretch) */
            .ama2-indicator { margin: 0.5rem auto 1rem; padding: 0 0.75rem; }
            .ama2 .pf-steps { gap: 0; justify-content: center; }
            .ama2 .pf-step-dot { gap: 0.35rem; flex: 0 0 auto; }
            .ama2 .pf-step-dot-circle { width: 34px; height: 34px; box-shadow: 0 0 0 3px var(--cream-soft), 0 0 0 4px var(--line-strong); }
            .ama2 .pf-step-dot-number { font-size: 0.9375rem; }
            .ama2 .pf-step-dot-label { display: none; }
            .ama2 .pf-step-dot--active .pf-step-dot-label { display: inline-block; position: absolute; top: calc(100% + 0.4rem); white-space: nowrap; font-size: 0.5625rem; }
            .ama2 .pf-step-connector { flex: 0 0 auto; width: 26px; min-width: 0; margin: 0 0.4rem 16px; }

            /* Crumb compact */
            .ama2-crumb { font-size: 0.5625rem; letter-spacing: 0.12em; margin: 0 0 0.75rem; }
            .ama2-crumb--top { padding: 0.75rem 1rem 0; margin-bottom: 0; }

            /* Frame panels */
            .ama2 .pf-panel.ama2-frame { margin-bottom: 1rem; }
            .ama2-frame__head { padding: 1.25rem 1rem 0.25rem; }
            .ama2-frame__eyebrow { font-size: 0.5625rem; letter-spacing: 0.18em; gap: 0.4rem; }
            .ama2-frame__eyebrow .num { font-size: 0.75rem; }
            .ama2-frame__title { font-size: 1.25rem; margin: 0.45rem 0 0.3rem; }
            .ama2-frame__caption { font-size: 0.85rem; line-height: 1.45; }
            .ama2-frame__body { padding: 0.875rem 1rem 1.25rem; }

            /* Broadside (info card) compact */
            .ama2-broadside { padding: 1.5rem 1.1rem 1.25rem; }
            .ama2-broadside-crest { width: 52px; height: 52px; margin-bottom: 0.875rem; font-size: 1.25rem; }
            .ama2-broadside-title { font-size: 1.125rem; }
            .ama2-broadside-desc { font-size: 0.8125rem; margin-bottom: 1rem; }
            .ama2-stats { padding: 0.75rem 0; margin-bottom: 1rem; }
            .ama2-stat-value { font-size: 1rem; }
            .ama2-stat-label { font-size: 0.5rem; }
            .ama2-side-heading { margin: 0.875rem 0 0.5rem; font-size: 0.5625rem; }
            .ama2-broadside-list li { font-size: 0.78rem; padding: 0.4rem 0; }

            /* Seal (order summary) compact */
            .ama2-seal { padding: 1.4rem 1.1rem 1rem; }
            .ama2-seal-row { padding: 0.45rem 0; }
            .ama2-seal-value { font-size: 0.875rem; }

            /* Below-fold sections */
            .ama2-scroll { margin-top: 2rem; padding: 0 1rem 2.5rem; }
            .ama2-bigrule { margin-bottom: 2rem; }
            .ama2-section { margin-bottom: 2.5rem; }
            .ama2-sec-label { font-size: 0.5625rem; letter-spacing: 0.2em; }
            .ama2-sec-title { font-size: 1.5rem; margin-bottom: 0.75rem; }
            .ama2-sec-desc { font-size: 0.9375rem; line-height: 1.6; margin-bottom: 1.25rem; }
            .ama2-examples { grid-template-columns: 1fr; gap: 0.5rem; margin-top: 1.25rem; }
            .ama2-example { font-size: 0.875rem; padding: 0.7rem 0.85rem; }
            .ama2-timeline { margin-top: 1.5rem; }
            .ama2-timeline::before { left: 22px; top: 22px; bottom: 22px; }
            .ama2-timeline-step { gap: 0.875rem; padding: 0.75rem 0; }
            .ama2-timeline-num { width: 46px; height: 46px; font-size: 1.125rem; box-shadow: 0 0 0 3px var(--cream-soft), 0 0 0 4px var(--line); }
            .ama2-timeline-body h4 { font-size: 1rem; }
            .ama2-timeline-body p { font-size: 0.85rem; line-height: 1.55; }
            .ama2-grid { grid-template-columns: 1fr; gap: 0.75rem; margin-top: 1.5rem; }
            .ama2-card { padding: 1.1rem; }
            .ama2-card h4 { font-size: 1rem; }
            .ama2-card p { font-size: 0.8125rem; }
            .ama2-advantages { padding: 0.5rem 1rem; margin-top: 1.5rem; }
            .ama2-advantage { grid-template-columns: 44px 1fr; gap: 0.875rem; padding: 1rem 0.25rem; }
            .ama2-advantage-icon { width: 42px; height: 42px; font-size: 1.125rem; }
            .ama2-advantage h4 { font-size: 1rem; margin: 0.15rem 0 0.3rem; }
            .ama2-advantage p { font-size: 0.85rem; line-height: 1.55; }
            .ama2-quality { padding: 1.5rem 1rem; gap: 0.75rem; margin-top: 1.5rem; grid-template-columns: repeat(2, 1fr); }
            .ama2-quality-value { font-size: 1.5rem; }
            .ama2-quality-label { font-size: 0.625rem; }
            .ama2-quality-item + .ama2-quality-item::before { display: none; }
            .ama2-faq { margin-top: 1.25rem; }
            .ama2-faq details { padding: 1rem 0; }
            .ama2-faq summary { font-size: 0.9375rem; padding-right: 2rem; }
            .ama2-faq summary::after { font-size: 1.25rem; }
            .ama2-faq-answer { font-size: 0.85rem; line-height: 1.6; padding-right: 0; margin-top: 0.6rem; }
            .ama2-related { grid-template-columns: 1fr 1fr; gap: 0.5rem; margin-top: 1.5rem; }
            .ama2-related-card { padding: 0.75rem 0.875rem; gap: 0.6rem; }
            .ama2-related-card span { font-size: 0.875rem; }

            /* Nav buttons */
            .ama2-nav.pf-nav { gap: 0.6rem; margin-top: 0.25rem; }
            .ama2 .pf-nav-btn { padding: 0.75rem 1rem; font-size: 0.6875rem; letter-spacing: 0.14em; gap: 0.4rem; }

            /* CTA banner */
            .ama2-cta { padding: 1.75rem 1rem; margin-top: 2rem; }
            .ama2-cta h3 { font-size: 1.25rem; }
            .ama2-cta p { font-size: 0.875rem; margin-bottom: 1.1rem; }
            .ama2-cta-btn { padding: 0.75rem 1.1rem; font-size: 0.6875rem; }
        }

        /* Very small phones */
        @media (max-width: 380px) {
            .ama2-hero { padding: 1.25rem 0.875rem 0.5rem; }
            .ama2-title { font-size: 1.5rem; }
            .ama2-sub { font-size: 0.8125rem; }
            .ama2 .pf-step-dot-circle { width: 30px; height: 30px; }
            .ama2 .pf-step-dot-number { font-size: 0.8125rem; }
            .ama2-frame__title { font-size: 1.125rem; }
        }

        /* ───────────────────────────────────────────────────────────────────
           Related Report Card (cross-promotion on AI feature + result pages).
           Lives inside .ama2 pages, so it inherits the letterpress design tokens
           and the .ama2-reveal scroll animation. Standalone class prefix `.rrc`
           keeps it tactical — no collision with the broader ama2 vocabulary.
           ─────────────────────────────────────────────────────────────────── */
        /* Block wrapper around the framing header + the report card.
           Provides the breathing room and section break that separates the
           premium-report promo from the AI form sitting just above it. */
        .rrc-block {
            margin: 4rem auto 1rem;
            max-width: 64rem;
            padding: 3rem 1.25rem 1rem;
            background:
                radial-gradient(ellipse at top, rgba(212, 32, 32, 0.04) 0, transparent 60%),
                linear-gradient(180deg, #fdf6ef 0%, #faf7f5 100%);
            border-top: 1px solid rgba(212, 32, 32, 0.18);
            border-bottom: 1px solid rgba(212, 32, 32, 0.18);
            position: relative;
        }
        .rrc-block::before,
        .rrc-block::after {
            content: "";
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            width: 80px;
            height: 1px;
            background: linear-gradient(90deg, transparent, rgba(194, 65, 12, 0.5), transparent);
        }
        .rrc-block::before { top: -1px; }
        .rrc-block::after  { bottom: -1px; }
        .rrc-block__header {
            text-align: center;
            max-width: 40rem;
            margin: 0 auto 1.75rem;
        }
        .rrc-block__rule {
            font-size: 0.95rem;
            color: rgba(194, 65, 12, 0.55);
            letter-spacing: 0.4em;
            margin-bottom: 0.85rem;
            user-select: none;
        }
        .rrc-block__eyebrow {
            display: inline-block;
            font-family: var(--mono);
            font-size: 0.7rem;
            letter-spacing: 0.32em;
            text-transform: uppercase;
            color: #c2410c;
            font-weight: 600;
            padding: 0.35rem 0.9rem;
            border-top: 1px solid rgba(194, 65, 12, 0.4);
            border-bottom: 1px solid rgba(194, 65, 12, 0.4);
            background: rgba(254, 243, 199, 0.4);
        }
        .rrc-block__heading {
            font-family: var(--display);
            font-size: 1.85rem;
            line-height: 1.25;
            margin: 1rem 0 0.7rem;
            color: #2a1408;
            font-weight: 700;
        }
        .rrc-block__lede {
            margin: 0 auto;
            font-size: 0.95rem;
            line-height: 1.65;
            color: #5a4434;
        }
        .rrc-block__lede strong {
            color: #2a1408;
        }
        .rrc {
            margin: 0 auto;
            max-width: 60rem;
            padding: 0 1.25rem;
            position: relative;
        }
        .rrc__ribbon {
            position: absolute;
            top: -10px;
            right: 2rem;
            z-index: 2;
            background: linear-gradient(135deg, #fbbf24 0%, #d97706 100%);
            color: #2a1408;
            font-family: var(--mono);
            font-size: 0.65rem;
            letter-spacing: 0.22em;
            text-transform: uppercase;
            font-weight: 700;
            padding: 0.4rem 0.9rem;
            border-radius: 4px;
            box-shadow: 0 4px 12px -3px rgba(217, 119, 6, 0.5);
        }
        .rrc__meta {
            display: flex;
            flex-wrap: wrap;
            gap: 0.4rem;
            margin: 0.4rem 0 0.2rem;
        }
        .rrc__meta-pill {
            display: inline-flex;
            align-items: center;
            gap: 0.35rem;
            padding: 0.25rem 0.7rem;
            background: rgba(212, 32, 32, 0.08);
            color: #7f1d1d;
            border: 1px solid rgba(212, 32, 32, 0.18);
            border-radius: 999px;
            font-size: 0.75rem;
            font-weight: 500;
            font-family: var(--mono);
            letter-spacing: 0.02em;
        }
        .rrc__meta-pill i {
            font-size: 0.85rem;
        }
        .rrc__inner {
            background: linear-gradient(135deg, #fff 0%, #fdf6ef 100%);
            border: 1px solid rgba(212, 32, 32, 0.18);
            border-radius: 14px;
            overflow: hidden;
            display: grid;
            grid-template-columns: minmax(220px, 280px) 1fr;
            box-shadow:
                0 1px 0 rgba(255, 255, 255, 0.85) inset,
                0 8px 28px -10px rgba(60, 20, 6, 0.18);
            position: relative;
        }
        .rrc__inner::before {
            content: "";
            position: absolute;
            inset: 0;
            background-image:
                radial-gradient(circle at 12% 15%, rgba(212, 32, 32, 0.05) 0, transparent 35%),
                radial-gradient(circle at 88% 85%, rgba(212, 32, 32, 0.04) 0, transparent 30%);
            pointer-events: none;
        }
        .rrc__cover {
            background: #1a0808;
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 100%;
            overflow: hidden;
        }
        .rrc__cover img {
            width: 100%;
            height: 100%;
            min-height: 220px;
            object-fit: cover;
            display: block;
        }
        .rrc__body {
            padding: 1.6rem 1.75rem 1.5rem;
            display: flex;
            flex-direction: column;
            gap: 0.65rem;
        }
        .rrc__eyebrow {
            text-transform: uppercase;
            letter-spacing: 0.18em;
            font-size: 0.6875rem;
            font-weight: 600;
            color: #c2410c;
            font-family: var(--mono);
        }
        .rrc__title {
            font-family: var(--display);
            font-size: 1.5rem;
            line-height: 1.2;
            margin: 0;
            color: #2a1408;
            font-weight: 700;
        }
        .rrc__tagline {
            margin: 0;
            font-size: 0.95rem;
            line-height: 1.55;
            color: #4a3424;
        }
        .rrc__bullets {
            list-style: none;
            margin: 0.25rem 0 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            gap: 0.4rem;
        }
        .rrc__bullets li {
            position: relative;
            padding-left: 1.4rem;
            font-size: 0.875rem;
            line-height: 1.5;
            color: #3a2616;
        }
        .rrc__bullets li::before {
            content: "✦";
            position: absolute;
            left: 0;
            top: 0;
            color: #c2410c;
            font-size: 0.8rem;
        }
        .rrc__cta-row {
            margin-top: 0.85rem;
            display: flex;
            align-items: center;
            gap: 1rem;
            flex-wrap: wrap;
        }
        .rrc__price {
            font-family: var(--display);
            font-size: 1.05rem;
            font-weight: 700;
            color: #2a1408;
        }
        .rrc__price-mrp {
            font-family: var(--sans);
            font-weight: 500;
            font-size: 0.82rem;
            color: rgba(42, 20, 8, 0.5);
            text-decoration: line-through;
            text-decoration-thickness: 1px;
            margin-right: 0.3rem;
        }
        .rrc__cta {
            margin-left: auto;
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            padding: 0.7rem 1.2rem;
            background: linear-gradient(135deg, #d42020 0%, #a01818 100%);
            color: #fff;
            text-decoration: none;
            border-radius: 8px;
            font-weight: 600;
            font-size: 0.875rem;
            letter-spacing: 0.02em;
            transition: transform 0.15s ease, box-shadow 0.15s ease;
            box-shadow: 0 4px 12px -4px rgba(212, 32, 32, 0.4);
        }
        .rrc__cta:hover {
            transform: translateY(-1px);
            box-shadow: 0 6px 18px -4px rgba(212, 32, 32, 0.5);
            color: #fff;
        }
        .rrc__cta i {
            transition: transform 0.15s ease;
        }
        .rrc__cta:hover i {
            transform: translateX(3px);
        }

        @media (max-width: 720px) {
            .rrc-block {
                margin: 2.5rem auto 0.5rem;
                padding: 2rem 1rem 0.75rem;
            }
            .rrc-block__heading {
                font-size: 1.45rem;
            }
            .rrc-block__lede {
                font-size: 0.88rem;
            }
            .rrc__ribbon {
                top: -8px;
                right: 1rem;
                font-size: 0.6rem;
                padding: 0.3rem 0.7rem;
            }
            .rrc__inner {
                grid-template-columns: 1fr;
            }
            .rrc__cover {
                min-height: 160px;
            }
            .rrc__cover img {
                min-height: 160px;
                max-height: 220px;
            }
            .rrc__body {
                padding: 1.25rem 1.25rem 1.3rem;
            }
            .rrc__title {
                font-size: 1.3rem;
            }
            .rrc__cta-row {
                gap: 0.65rem;
            }
            .rrc__cta {
                margin-left: 0;
                width: 100%;
                justify-content: center;
            }
        }
