/* Virya brand touches shared by every page: the lotus as a list bullet and carousel marker, and the
   ember → saffron → gold rule. The lotus is the header lockup's own geometry (src/client/virya-mark.mjs),
   inlined here as a data: image, which the CSP allows (img-src 'self' data:). */
:root { --virya-lotus:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%27-4%20-10%20156%20144%27%3E%3Cdefs%3E%3ClinearGradient%20id=%27g%27%20x1=%270%27%20y1=%271%27%20x2=%270%27%20y2=%270%27%3E%3Cstop%20offset=%270%27%20stop-color=%27%23E4572E%27/%3E%3Cstop%20offset=%27.55%27%20stop-color=%27%23F2A93B%27/%3E%3Cstop%20offset=%271%27%20stop-color=%27%23FFD36A%27/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg%20fill=%27url%28%23g%29%27%3E%3Cpath%20d=%27M14%20130%20C0%20116%20-2%2098%2010%2080%20C12%20100%2026%20112%2040%20130%20Z%27/%3E%3Cpath%20d=%27M40%20130%20C24%20104%2032%2076%2060%2044%20C50%2078%2066%20106%2066%20130%20Z%27/%3E%3Cpath%20d=%27M60%20130%20C50%2096%2060%2056%2072%208%20C84%2056%2094%2096%2084%20130%20Z%27/%3E%3Cpath%20d=%27M78%20130%20C78%20106%2094%2078%2084%2044%20C112%2076%20120%20104%20104%20130%20Z%27/%3E%3Cpath%20d=%27M104%20130%20C118%20112%20132%20100%20134%2080%20C146%2098%20144%20116%20130%20130%20Z%27/%3E%3Ccircle%20cx=%2772%27%20cy=%27-4%27%20r=%273.4%27/%3E%3C/g%3E%3C/svg%3E"); --virya-rule:linear-gradient(90deg,#E4572E 0%,#F2A93B 55%,#FFD36A 100%); }
.virya-mark { width:18px; height:auto; flex:none; }
.virya-rule { height:3px; border:0; border-radius:3px; background:var(--virya-rule); }

/* Lists: a small lotus in place of a bullet. */
.virya-list > li, .virya-bullet { position:relative; }
.virya-list > li::before { content:""; position:absolute; left:10px; top:13px; width:13px; height:12px; background:var(--virya-lotus) center/contain no-repeat; pointer-events:none; }
.virya-list > li > :first-child { padding-left:30px; }

/* Cards in a branded list or carousel carry the gradient rule along their top edge. */
.virya-top { position:relative; overflow:hidden; }
.virya-top::after { content:""; position:absolute; left:0; right:0; top:0; height:3px; background:var(--virya-rule); }

/* Carousel position markers: one lotus per slide, the current one in full colour. */
.virya-dots { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:0; padding:0; list-style:none; }
.virya-dot { width:22px; height:20px; padding:0; border:0; background:var(--virya-lotus) center/contain no-repeat; opacity:.28; filter:grayscale(.9); cursor:pointer; transition:opacity .2s,filter .2s,transform .2s; }
.virya-dot:hover { opacity:.6; }
.virya-dot[aria-current="true"] { opacity:1; filter:none; transform:scale(1.15); }
.virya-dot:focus-visible { outline:3px solid rgba(242,169,59,.55); outline-offset:2px; border-radius:6px; }
@media (prefers-reduced-motion: reduce) { .virya-dot { transition:none; } }
