/* ============================================================
   ACM Reverse Mortgage Loan Analysis — Stylesheet v1.0
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300&family=Rajdhani:wght@400;500;600;700&display=swap');

.acm-rm2-fullwidth {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    margin-left: -50vw !important;
    background: #07080A !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
    font-family: 'Rajdhani', sans-serif;
    color: #E8E0D0;
}

/* ── Red ACM Banner Header ── */
.acm-rm2-header {
    background: linear-gradient(135deg, #6B0000 0%, #8B0000 40%, #7A0000 100%);
    border-bottom: 3px solid #C9A84C;
    padding: 28px 48px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
.acm-rm2-header::before { content:""; position:absolute; inset:0; background:repeating-linear-gradient(45deg,transparent,transparent 40px,rgba(0,0,0,0.04) 40px,rgba(0,0,0,0.04) 80px); pointer-events:none; }
.acm-rm2-brand  { font-size:11px; letter-spacing:3px; text-transform:uppercase; color:rgba(232,224,208,0.65); margin-bottom:8px; }
.acm-rm2-title  { font-size:30px; font-weight:700; color:#FFFFFF; letter-spacing:1px; text-transform:uppercase; line-height:1.1; margin:0; }
.acm-rm2-sub    { font-size:11px; color:rgba(232,224,208,0.55); letter-spacing:2px; text-transform:uppercase; margin-top:6px; }
.acm-rm2-byline { border:1px solid rgba(201,168,76,0.6); padding:12px 20px; text-align:center; flex-shrink:0; }
.acm-rm2-byline-label { font-size:10px; letter-spacing:2px; text-transform:uppercase; color:rgba(232,224,208,0.5); margin-bottom:4px; }
.acm-rm2-byline-name  { font-family:'Cormorant Garamond',serif; font-size:20px; color:#E8CC7A; }
@media (max-width:700px) { .acm-rm2-header { flex-direction:column; gap:16px; padding:24px 20px; } .acm-rm2-title { font-size:22px; } }

/* ── Facts bar ── */
.acm-rm2-facts-bar { display:flex; align-items:center; gap:36px; padding:16px 48px; background:#0A0B0E; border-bottom:1px solid rgba(201,168,76,0.12); flex-wrap:wrap; }
.acm-rm2-fact { display:flex; flex-direction:column; align-items:center; }
.acm-rm2-fact-num { font-size:28px; font-weight:700; color:#E8CC7A; line-height:1; }
.acm-rm2-fact-lbl { font-size:10px; letter-spacing:2px; text-transform:uppercase; color:#555; margin-top:3px; text-align:center; }
.acm-rm2-fact-desc { font-size:14px; color:#8A8278; margin-left:auto; max-width:480px; line-height:1.5; font-style:italic; }
@media (max-width:700px) { .acm-rm2-facts-bar { padding:14px 20px; gap:20px; } .acm-rm2-fact-desc { margin-left:0; } }

/* ── Content ── */
.acm-rm2-content { padding:0 48px 64px; }
@media (max-width:700px) { .acm-rm2-content { padding:0 20px 40px; } }

/* ── Sections ── */
.acm-rm2-section { padding-top:48px; }
.acm-rm2-section-label { font-size:11px; letter-spacing:4px; text-transform:uppercase; color:#C9A84C; margin-bottom:10px; }
.acm-rm2-section-title { font-size:24px; font-weight:700; color:#FFFFFF; text-transform:uppercase; letter-spacing:1px; margin:0 0 20px; padding-bottom:14px; border-bottom:1px solid rgba(201,168,76,0.2); }
.acm-rm2-body { font-size:19px; line-height:1.9; color:#B8B0A0; margin:0 0 20px; }
.acm-rm2-body strong { color:#E8CC7A; }

/* ── Payout options ── */
.acm-rm2-options-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
@media (max-width:900px) { .acm-rm2-options-grid { grid-template-columns:1fr; } }

.acm-rm2-option { background:#0E1014; border:1px solid rgba(201,168,76,0.12); border-top:3px solid; padding:24px 20px; }
.acm-rm2-option-num   { font-family:'Cormorant Garamond',serif; font-size:40px; font-weight:300; line-height:1; margin-bottom:10px; opacity:0.5; }
.acm-rm2-option-title { font-size:16px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:#E8E0D0; margin-bottom:12px; }
.acm-rm2-option-desc  { font-size:15px; color:#8A8278; line-height:1.7; }

/* ── Two column ── */
.acm-rm2-two-col { display:grid; grid-template-columns:1fr 380px; gap:28px; align-items:start; }
@media (max-width:900px) { .acm-rm2-two-col { grid-template-columns:1fr; } }

/* ── Requirements list ── */
.acm-rm2-list-title { font-size:12px; letter-spacing:2px; text-transform:uppercase; color:#C9A84C; margin-bottom:16px; }
.acm-rm2-req-list   { display:flex; flex-direction:column; gap:0; }
.acm-rm2-req-item   { display:flex; align-items:flex-start; gap:12px; padding:12px 0; border-bottom:1px solid rgba(201,168,76,0.07); }
.acm-rm2-req-item:last-child { border-bottom:none; }
.acm-rm2-req-check  { color:#00C853; font-size:16px; flex-shrink:0; margin-top:1px; }
.acm-rm2-req-title  { font-size:15px; font-weight:700; color:#E8E0D0; margin-bottom:2px; }
.acm-rm2-req-note   { font-size:13px; color:#555; line-height:1.4; }

/* ── Loan factor box ── */
.acm-rm2-factor-box { background:#0E1014; border:1px solid rgba(201,168,76,0.2); border-top:3px solid #C9A84C; padding:24px; }
.acm-rm2-factor-title { font-size:11px; letter-spacing:3px; text-transform:uppercase; color:#C9A84C; margin-bottom:16px; padding-bottom:10px; border-bottom:1px solid rgba(201,168,76,0.15); }
.acm-rm2-factor-row { display:flex; flex-direction:column; padding:10px 0; border-bottom:1px solid rgba(201,168,76,0.07); gap:3px; }
.acm-rm2-factor-row:last-child { border-bottom:none; }
.acm-rm2-factor-name   { font-size:14px; font-weight:700; color:#E8E0D0; }
.acm-rm2-factor-detail { font-size:13px; color:#555; }

/* ── Costs grid ── */
.acm-rm2-costs-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:8px; }
@media (max-width:1100px) { .acm-rm2-costs-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:550px)  { .acm-rm2-costs-grid { grid-template-columns:1fr; } }

.acm-rm2-cost-card   { background:#0E1014; border:1px solid rgba(201,168,76,0.1); border-top:2px solid #8B0000; padding:18px 16px; }
.acm-rm2-cost-type   { font-size:12px; letter-spacing:1.5px; text-transform:uppercase; color:#C9A84C; margin-bottom:8px; }
.acm-rm2-cost-amount { font-size:17px; font-weight:700; color:#FF9800; margin-bottom:8px; }
.acm-rm2-cost-note   { font-size:13px; color:#555; line-height:1.5; }

/* ── Pros & Cons ── */
.acm-rm2-procon-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
@media (max-width:800px) { .acm-rm2-procon-grid { grid-template-columns:1fr; } }

.acm-rm2-pros, .acm-rm2-cons { background:#0E1014; border:1px solid rgba(201,168,76,0.1); padding:0; overflow:hidden; }
.acm-rm2-procon-title { font-size:12px; letter-spacing:3px; text-transform:uppercase; font-weight:700; padding:14px 20px; }
.acm-rm2-procon-title.pros { background:rgba(0,200,83,0.1);  color:#00C853; border-bottom:1px solid rgba(0,200,83,0.15); }
.acm-rm2-procon-title.cons { background:rgba(255,23,68,0.08); color:#FF1744; border-bottom:1px solid rgba(255,23,68,0.12); }

.acm-rm2-pc-item  { display:flex; align-items:flex-start; gap:12px; padding:12px 20px; border-bottom:1px solid rgba(201,168,76,0.06); }
.acm-rm2-pc-item:last-child { border-bottom:none; }
.acm-rm2-pc-icon  { font-size:14px; flex-shrink:0; margin-top:1px; }
.acm-rm2-pc-icon.pro { color:#00C853; }
.acm-rm2-pc-icon.con { color:#FF1744; font-size:10px; }
.acm-rm2-pc-point { font-size:15px; font-weight:700; color:#E8E0D0; margin-bottom:3px; }
.acm-rm2-pc-note  { font-size:13px; color:#555; line-height:1.4; }

/* ── Video ── */
.acm-rm2-video-wrap { background:#0A0B0E; border:1px solid rgba(201,168,76,0.2); margin-top:8px; overflow:hidden; }
.acm-rm2-video-container { position:relative; padding-bottom:56.25%; height:0; overflow:hidden; }
.acm-rm2-video-container iframe { position:absolute; top:0; left:0; width:100%; height:100%; border:none; }
.acm-rm2-video-caption { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; padding:14px 24px; border-top:1px solid rgba(201,168,76,0.1); }
.acm-rm2-video-title { font-size:14px; font-weight:700; color:#E8CC7A; letter-spacing:0.5px; }
.acm-rm2-video-meta { font-size:13px; color:#555; }
.acm-rm2-video-meta a { color:#C9A84C; text-decoration:none; }
.acm-rm2-video-meta a:hover { color:#FFE09A; text-decoration:none; }

/* ── ACM Guidance ── */
.acm-rm2-guidance { margin-top:40px; background:rgba(201,168,76,0.04); border:1px solid rgba(201,168,76,0.2); border-left:4px solid #C9A84C; padding:28px 32px; }
.acm-rm2-guidance-title { font-size:13px; letter-spacing:3px; text-transform:uppercase; color:#C9A84C; margin-bottom:14px; }
.acm-rm2-guidance p { font-size:17px; line-height:1.8; color:#B8B0A0; margin:0; }

/* ── CTA grid ── */
.acm-rm2-cta-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:48px; padding-top:8px; }
@media (max-width:900px) { .acm-rm2-cta-grid { grid-template-columns:1fr; } }

.acm-rm2-cta-card  { background:#0E1014; border:1px solid rgba(201,168,76,0.12); border-top:3px solid #C9A84C; padding:24px 20px; display:flex; flex-direction:column; gap:10px; }
.acm-rm2-cta-title { font-size:14px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:#E8E0D0; }
.acm-rm2-cta-desc  { font-size:14px; color:#8A8278; line-height:1.5; flex:1; }
.acm-rm2-cta-btn   { display:inline-block; margin-top:8px; font-size:12px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#C9A84C; text-decoration:none; border-bottom:1px solid rgba(201,168,76,0.3); padding-bottom:2px; align-self:flex-start; transition:color 0.2s, border-color 0.2s; }
.acm-rm2-cta-btn:hover { color:#FFE09A; border-color:#FFE09A; text-decoration:none; }
