:root{--cg-ink:var(--color-ink,#1c1a17);--cg-sage:var(--color-sage,#5f8a7e);--cg-gold:var(--color-gold,#c4973b);--cg-cream:var(--color-cream,#faf8f5);--cg-border:var(--color-border,#e0d8c8)}.cg-new-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--cg-gold);box-shadow:0 0 0 0 rgba(196,151,59,.55);animation:cg-dot-pulse 2.6s ease-out infinite}@keyframes cg-dot-pulse{0%{box-shadow:0 0 0 0 rgba(196,151,59,.5)}70%{box-shadow:0 0 0 6px rgba(196,151,59,0)}to{box-shadow:0 0 0 0 rgba(196,151,59,0)}}.cg-replay{display:flex;align-items:center;gap:.55rem;width:calc(100% - 1.2rem);margin:0 .6rem .5rem;padding:.5rem .85rem;border:1px solid hsla(0,0%,100%,.11);border-radius:9px;background:hsla(0,0%,100%,.045);font-family:var(--font-body);font-size:.78rem;color:hsla(36,33%,97%,.72);cursor:pointer;text-align:left;transition:background .15s ease,color .15s ease}.cg-replay:hover{background:hsla(0,0%,100%,.09);color:#faf8f5}.cg-overlay{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:rgba(28,26,23,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:cg-fade .28s ease both}@keyframes cg-fade{0%{opacity:0}to{opacity:1}}.cg-modal{position:relative;width:100%;max-width:560px;max-height:calc(100vh - 2.5rem);overflow:hidden;display:flex;flex-direction:column;background:#fff;border-radius:22px;box-shadow:0 30px 80px -20px rgba(28,26,23,.55),0 0 0 1px rgba(28,26,23,.04);animation:cg-pop .42s cubic-bezier(.16,1,.3,1) both}@keyframes cg-pop{0%{opacity:0;transform:translateY(18px) scale(.965)}to{opacity:1;transform:translateY(0) scale(1)}}.cg-close{position:absolute;top:12px;right:12px;z-index:3;width:34px;height:34px;border:none;border-radius:50%;background:hsla(0,0%,100%,.84);color:var(--cg-ink);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s;box-shadow:0 2px 8px rgba(0,0,0,.12)}.cg-close:hover{background:#fff;transform:scale(1.06)}.cg-hero{position:relative;height:244px;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.cg-hero-glow{position:absolute;inset:0;opacity:.92}.cg-hero-crest{right:-6%;top:50%;transform:translateY(-50%);color:#fff;opacity:.13;line-height:0}.cg-hero-crest,.cg-hero:after{position:absolute;pointer-events:none}.cg-hero:after{content:"";inset:0;background:radial-gradient(120% 90% at 50% 8%,hsla(0,0%,100%,.18),transparent 55%),linear-gradient(180deg,transparent 60%,rgba(28,26,23,.2))}.cg-stage{position:relative;z-index:2;width:100%;height:100%;display:flex;align-items:center;justify-content:center;animation:cg-rise .5s cubic-bezier(.16,1,.3,1) both}@keyframes cg-rise{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cg-body{padding:1.5rem 1.75rem .5rem;overflow-y:auto}.cg-eyebrow{display:flex;align-items:center;gap:9px;font-family:var(--font-body);font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--cg-tint,#4a7166);margin:0 0 9px}.cg-eyebrow-tick{width:16px;height:5px;flex-shrink:0;border:1px solid;border-bottom:none;opacity:.6}.cg-title{font-family:var(--font-display);font-weight:440;font-size:1.55rem;line-height:1.18;color:var(--cg-ink);margin:0 0 10px;letter-spacing:-.01em;animation:cg-rise .5s cubic-bezier(.16,1,.3,1) both}.cg-text{font-family:var(--font-body);font-size:.95rem;line-height:1.62;color:#6b6660;margin:0;animation:cg-rise .55s cubic-bezier(.16,1,.3,1) both}.cg-text b{color:#4a4540;font-weight:650}.cg-why{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--cg-wash,rgba(74,113,102,.09));border:1px solid var(--cg-wash-line,rgba(74,113,102,.24));animation:cg-rise .6s cubic-bezier(.16,1,.3,1) both}.cg-why-mark{flex-shrink:0;color:var(--cg-tint,#4a7166);margin-top:1px;line-height:0}.cg-why p{margin:0;font-family:var(--font-body);font-size:.85rem;line-height:1.55;color:var(--cg-tint-ink,#3c5f55)}.cg-why b{font-weight:700}.cg-note{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:11px 13px;border-radius:12px;background:rgba(28,26,23,.035);border:1px solid rgba(28,26,23,.08)}.cg-note p{margin:0;font-family:var(--font-body);font-size:.82rem;line-height:1.55;color:#7a746c}.cg-note b{color:#56514a;font-weight:650}.cg-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1.1rem 1.75rem 1.4rem;flex-shrink:0}.cg-dots{display:flex;gap:7px}.cg-dot{width:7px;height:7px;border-radius:50%;background:#e3ddd2;transition:all .3s ease}.cg-dot.cg-dot-active{width:22px;border-radius:4px;background:var(--cg-tint,#4a7166)}.cg-actions{display:flex;align-items:center;gap:8px}.cg-btn{font-family:var(--font-body);font-size:.85rem;font-weight:600;border-radius:10px;padding:10px 18px;cursor:pointer;border:1px solid transparent;transition:transform .12s,background .15s,box-shadow .15s}.cg-btn:active{transform:translateY(1px)}.cg-btn-ghost{background:transparent;color:var(--cg-ink);border-color:var(--cg-border)}.cg-btn-ghost:hover{background:var(--cg-cream)}.cg-btn-primary{background:var(--cg-ink);color:#fff;box-shadow:0 6px 18px -6px rgba(28,26,23,.6)}.cg-btn-primary:hover{background:#3a352f}.cg-card{background:#fff;border-radius:12px;box-shadow:0 14px 34px -16px rgba(28,26,23,.5);border:1px solid rgba(28,26,23,.05)}.cg-pill{font-family:var(--font-body);font-size:8.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:100px;white-space:nowrap}.cg-cursor{position:absolute;width:20px;height:20px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35));animation:cg-tap 2.6s ease-in-out infinite}@keyframes cg-tap{0%,to{transform:translate(0)}45%{transform:translate(-3px,-3px)}55%{transform:translate(-3px,-3px) scale(.9)}}.cg-grow{transform-origin:left center;animation:cg-growx .85s cubic-bezier(.16,1,.3,1) both}@keyframes cg-growx{0%{transform:scaleX(.04)}to{transform:scaleX(1)}}.cg-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:cg-drawline 1.1s cubic-bezier(.5,0,.2,1) .15s both}@keyframes cg-drawline{to{stroke-dashoffset:0}}@media (max-width:560px){.cg-modal{max-width:100%;border-radius:18px}.cg-hero{height:208px}.cg-body{padding:1.25rem 1.25rem .25rem}.cg-title{font-size:1.3rem}.cg-foot{padding:1rem 1.25rem 1.25rem}.cg-btn{padding:10px 14px}}@media (prefers-reduced-motion:reduce){.cg-cursor,.cg-draw,.cg-grow,.cg-modal,.cg-new-dot,.cg-overlay,.cg-stage,.cg-text,.cg-title,.cg-why{animation:none!important}.cg-draw{stroke-dashoffset:0}}