/* Compact comparison, with visible contents and no duplicate feature lists. */
#offer { padding-block:48px; }
#offer .offer-intro { margin-bottom:24px; }
#offer .offer-intro .lead { line-height:1.5; margin-top:12px; }
.offer-artwork { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:center; gap:32px; margin:0 0 32px; }
.offer-artwork-images { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; height:230px; overflow:hidden; border-radius:6px; }
.offer-artwork-images img { width:100%; height:230px; object-fit:cover; object-position:center 60%; display:block; }
.offer-artwork-images img:nth-child(2) { object-position:center 74%; }
.offer-artwork figcaption { font:400 clamp(1.5rem,2.3vw,2rem)/1.2 var(--serif); color:#49313f; }
.offer-artwork figcaption span { display:block; font:400 .875rem/1.5 var(--sans); color:#6b5964; margin-top:12px; max-width:34ch; }
#offer .pricing-grid { gap:16px; align-items:stretch; }
#offer .plan-card { padding:24px; min-height:0; transform:none; opacity:1; }
#offer .plan-card.featured { transform:none; border:2px solid #876072; box-shadow:0 12px 30px #482b3b0c; }
#offer .plan-badge { position:static; align-self:flex-start; margin:0 0 12px; padding:5px 9px; font-size:.75rem; line-height:1.3; letter-spacing:.025em; }
#offer .plan-intent { font:400 clamp(1.55rem,2.1vw,1.95rem)/1.14 var(--serif); margin:0 0 12px; max-width:none; letter-spacing:-.015em; }
#offer .plan-card h3 { font:600 1rem/1.35 var(--sans); letter-spacing:.01em; }
#offer .cross-read-shimmer { position:relative;isolation:isolate;overflow:hidden;background:#674154;color:#fffaf7;border:1px solid #9f7b8d;box-shadow:0 4px 18px #67415426; }
#offer .cross-read-shimmer::after { content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,#fff5e72b 45%,#fff5e759 50%,#fff5e72b 55%,transparent 75%);transform:translateX(-130%);animation:cross-read-light 6s ease-in-out infinite;z-index:-1; }
#offer .cross-read-shimmer:hover { background:#523145;box-shadow:0 5px 22px #67415440; }
#offer .cross-read-shimmer:focus-visible { outline:3px solid #a7798d;outline-offset:4px; }
@keyframes cross-read-light { 0%,65%{transform:translateX(-130%)} 90%,100%{transform:translateX(130%)} }
@media(prefers-reduced-motion:reduce){#offer .cross-read-shimmer::after{animation:none;display:none}}
#offer .price-line { margin:10px 0; }
#offer .price { font-size:2.6rem; line-height:1; }
#offer .plan-card .plan-topic-scope { font-size:1rem; line-height:1.45; margin:0 0 10px; min-height:0; border:0; padding:0; }
#offer .plan-delivery { display:none; } /* Repeated immediately below in visible length + delivery. */
#offer .plan-card .plan-details-visible { margin:10px 0 18px; padding:12px 0 0; border-bottom:0; }
#offer .plan-details-visible h4 { font-size:.875rem; line-height:1.3; margin:0 0 6px; }
#offer .plan-details-visible .plan-size { display:block; font-size:.875rem; line-height:1.4; margin:0 0 10px; font-weight:600; }
#offer .plan-details-visible .plan-list { gap:0; margin:0; }
#offer .plan-details-visible .plan-list li { font-size:1rem; line-height:1.4; padding:7px 0; }
#offer .plan-card .button { min-height:52px; padding:12px; font-size:1rem; line-height:1.3; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:4px 10px; }
#offer .plan-card .cta-price { margin:0; font-size:.875rem; line-height:1.3; }
#offer .complete-reading { margin-top:24px; padding:28px; gap:24px; }
#offer .complete-contents { margin-block:14px; gap:12px; }
#offer .complete-contents p { margin:0; line-height:1.45; }
#offer .compatibility-offer { margin:24px auto; padding:24px; }
#offer .compatibility-offer p { margin-block:10px; line-height:1.5; }
#offer .signal-return { margin-top:20px; line-height:1.5; }
.checkout-promo{margin:20px 0;padding:16px 0;border-top:1px solid #cbb8c2}
.checkout-promo label{display:block;margin-bottom:8px;font-weight:600}
.checkout-promo input{width:100%;box-sizing:border-box;min-height:44px;padding:10px;font:inherit}
.checkout-promo p{font-size:.875rem;line-height:1.4;margin-top:8px}
#offer .sentence-stack p { margin:0 0 .45em; line-height:1.5; text-wrap:pretty; }
#offer .sentence-stack .sentence-group { margin-top:1.1em; }
#complete-questions{border:0;padding:0;margin:22px 0;min-width:0}
#complete-questions legend{font-weight:600;margin-bottom:10px}
#complete-questions label{display:block;margin:16px 0 7px}
#complete-questions textarea{display:block;width:100%;min-height:100px}
#offer .complete-saving{white-space:normal;line-height:1.4}
#offer #compatibility-offer{display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:clamp(24px,5vw,64px);padding:clamp(24px,4vw,48px);margin:32px 0;background:linear-gradient(120deg,#eee0e7,#f8f0ea);border:1px solid #cbb2c0;border-radius:8px;color:#49323f;scroll-margin-top:90px}
#offer #compatibility-offer>div{max-width:none;min-width:0}
#offer #compatibility-offer .section-index{font:600 .875rem/1.4 var(--sans);letter-spacing:.025em;color:#725064;margin:0 0 16px;text-transform:none}
#offer #compatibility-offer h3{font:400 clamp(2.5rem,4.6vw,4rem)/1.03 var(--serif);letter-spacing:-.025em;color:#432b39;margin:0 0 18px}
#offer #compatibility-offer .compatibility-offer-tagline{font-size:1.15rem;line-height:1.4;color:#4a3140;margin:0 0 14px}
#offer .compatibility-feature-list{list-style:none;padding:0;margin:18px 0;border-top:1px solid #cdb9c4}
#offer .compatibility-feature-list li{font-size:1rem;line-height:1.4;padding:8px 0;border-bottom:1px solid #dbcbd3}
#offer .compatibility-feature-checkout{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:18px 0 12px}
#offer #compatibility-offer .compatibility-feature-price{font:400 2.2rem/1 var(--serif);margin:0}
#offer .compatibility-feature-price span{display:block;font:400 .875rem/1.4 var(--sans);margin-top:5px}
#offer #compatibility-offer .button{background:#654254;color:#fffaf7;border:1px solid #654254;min-height:50px;padding:13px 20px;font-size:1rem;line-height:1.3}
#offer #compatibility-offer .button:hover{background:#4c2e3e}
#offer #compatibility-offer .compatibility-offer-detail,#offer #compatibility-offer .compatibility-offer-note{font-size:.875rem;font-weight:400;line-height:1.45;margin:10px 0 0;color:#67515e}
#offer .compatibility-feature-excerpt{background:#fffaf5;padding:clamp(24px,3.2vw,40px);border:1px solid #e2d3d9;border-radius:3px;box-shadow:0 16px 35px #57364a10;min-width:0}
#offer #compatibility-offer .compatibility-excerpt-label{font:500 .875rem/1.4 var(--sans);color:#826173;margin:0 0 24px}
#offer .compatibility-feature-excerpt h4{font:400 clamp(2rem,3vw,2.8rem)/1.12 var(--serif);color:#634658;margin:0 0 22px;letter-spacing:-.015em}
#offer .compatibility-feature-excerpt>p:not(.compatibility-excerpt-label){font:400 1rem/1.55 var(--sans);margin:14px 0}
#offer .compatibility-excerpt-bottom{border-top:1px solid #dfccd6;margin-top:24px;padding-top:18px;display:grid;gap:10px;font-size:.875rem;line-height:1.4;color:#725768}
#offer .compatibility-excerpt-bottom a{color:#654254;text-underline-offset:4px}
@media(max-width:760px){#offer #compatibility-offer{grid-template-columns:1fr;gap:24px;padding:24px 20px;margin-top:26px}#offer #compatibility-offer h3{font-size:2.8rem}#offer .compatibility-feature-excerpt{padding:24px}#offer .compatibility-feature-checkout{gap:14px}#offer #compatibility-offer .button{flex:1;min-width:170px}}
@media(max-width:700px) {
 #offer .complete-contents p { margin-bottom:14px; padding-block:14px; }
 #offer .complete-scope-note { margin-top:18px; }
 #offer .complete-reading .button { white-space:normal; }
 #offer { padding-block:32px; }
 .offer-artwork { grid-template-columns:1fr; gap:12px; margin-bottom:22px; }
 .offer-artwork-images,.offer-artwork-images img { height:174px; }
 .offer-artwork-images { gap:7px; }
 .offer-artwork figcaption { font-size:1.4rem; }
 .offer-artwork figcaption span { max-width:none; margin-top:6px; }
 #offer .pricing-grid { gap:14px; }
 #offer .plan-card { padding:20px; }
 #offer .plan-card h3 { font-size:1rem; }
 #offer .plan-details-visible .plan-list li { padding:6px 0; }
 #offer .complete-reading { padding:22px; gap:18px; }
}
