.quote--ribbon{--accent: var(--color-primary, #4090cd);--panel: rgba(64, 144, 205, .12);--ink: var(--color-grey-dark, #323232);margin:clamp(1.25rem,2.2vw,2rem) 0;--pad-y: clamp(1.1rem, 2vw, 1.6rem);--pad-x: clamp(1.1rem, 2.6vw, 1.8rem);padding:var(--pad-y) var(--pad-x);padding-left:calc(var(--pad-x) + .55rem);border-radius:20px;position:relative;overflow:hidden;background:radial-gradient(circle at 15% 15%,rgba(255,255,255,.85),transparent 55%),linear-gradient(135deg,var(--panel),rgba(0,0,0,.02));border:1px solid rgba(0,0,0,.08);box-shadow:0 16px 34px #0000001a,0 1px #ffffffa6 inset}.quote--ribbon:before{content:"";position:absolute;inset:0 auto 0 0;width:12px;background:linear-gradient(180deg,var(--accent),rgba(64,144,205,.28))}.quote--ribbon:after{content:"“";position:absolute;right:18px;top:-22px;font-size:140px;line-height:1;font-weight:900;color:#0000000f;pointer-events:none}.quote--ribbon blockquote{margin:0;padding:0;border:0}.quote--ribbon .quote__text{margin:0 0 .85rem;color:var(--ink);font-size:clamp(18px,2.2vw,28px);line-height:1.22;letter-spacing:-.015em;text-wrap:balance}.quote--ribbon .quote__text>:first-child{margin-top:0}.quote--ribbon .quote__text>:last-child{margin-bottom:0}.quote--ribbon .quote__text p{margin:0 0 .85rem;font:inherit;color:inherit}.quote--ribbon .quote__text p:last-child{margin-bottom:0}.quote--ribbon .quote__source{margin:0;padding-top:.35rem;display:inline-flex;align-items:center;gap:.55rem;font-size:14px;color:#0000009e;font-style:normal}.quote--ribbon .quote__source:before{content:"";width:22px;height:2px;border-radius:999px;background:#00000038}
