@charset "utf-8";
/* Your Aura Reflection. Uses the site's colour tokens. The glow sits around the portrait; the photo itself is never tinted. */
.ar-sec{padding-block:40px 72px;overflow-x:clip}
.ar-stack{display:grid;gap:16px}
.ar-stack > *{margin:0}
.ar-sec h1{font-size:clamp(2rem,7vw,2.8rem);line-height:1.12}
.ar-sec h1:focus,.ar-sec h2:focus,.ar-moment-t:focus,.ar-making-t:focus{outline:none}
.ar-sec .lede{font-size:1.1rem;line-height:1.65}
.ar-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ar-notice{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(201,169,106,.07)}
.ar-notice p{margin:0;line-height:1.6}
.ar-small{font-size:.92rem;line-height:1.55;color:var(--mist)}
.ar-card{gap:16px;border-color:var(--line)}
.ar-card > *{margin:0}
.ar-form{display:grid;gap:20px}
.ar-field{display:grid;gap:6px}
.ar-field label,.ar-group legend{font-weight:600}
.ar-in{width:100%;min-height:52px;padding:.7rem .9rem;border:1px solid var(--line-soft);border-radius:12px;background:var(--bg-2);color:var(--text);font:inherit;font-size:1.05rem}
.ar-in:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(230,207,156,.25)}
.ar-in[aria-invalid=true]{border-color:var(--err)}
.ar-hint{margin:0;font-size:.9rem;color:var(--mist)}
.ar-err{margin:0;color:var(--err);font-size:.92rem}
.ar-errbox{margin:0;padding:12px 16px;border:1px solid var(--err);border-radius:14px;background:rgba(243,169,150,.08);line-height:1.55}
.ar-form .btn,.ar-card > .btn{justify-self:start}
.ar-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.ar-group{margin:0;padding:0;border:0;display:grid;gap:10px;min-width:0}
.ar-group legend{padding:0;margin-bottom:6px;font-size:1.1rem}
.ar-opts{display:grid;gap:8px}
@media (min-width:600px){.ar-opts{grid-template-columns:1fr 1fr}}
.ar-opt{display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 14px;border:1px solid var(--line-soft);border-radius:14px;background:var(--surface);cursor:pointer;line-height:1.35}
.ar-opt input{width:20px;height:20px;flex:none;margin:0;accent-color:var(--gold)}
.ar-opt:has(input:checked){border-color:var(--gold);background:rgba(201,169,106,.12)}
.ar-opt:has(input:focus-visible){outline:3px solid var(--gold-hi);outline-offset:2px}
.ar-opt-soft{border-style:dashed}
.ar-optlabel{margin:6px 0 0;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem}
.ar-dot{display:inline-block;width:18px;height:18px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c);flex:none;margin-right:2px;vertical-align:-3px}
.ar-check{display:flex;gap:10px;align-items:center;min-height:44px;cursor:pointer;line-height:1.4}
.ar-check input{width:22px;height:22px;flex:none;accent-color:var(--gold)}

/* camera and preview */
.ar-cam{position:relative;width:min(86vw,420px);aspect-ratio:1;margin-inline:auto;border-radius:50%;overflow:hidden;border:2px solid var(--gold);background:#000}
.ar-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.ar-preview{width:min(70vw,300px);aspect-ratio:1;margin-inline:auto;border-radius:50%;overflow:hidden;border:2px solid var(--gold)}
.ar-preview img{width:100%;height:100%;object-fit:cover;display:block}

/* portrait with glow */
.ar-portrait{--size:180px;position:relative;width:var(--size);height:var(--size);margin-inline:auto;display:grid;place-items:center}
.ar-portrait.big{--size:min(64vw,250px)}
.ar-halo{position:absolute;inset:-38%;border-radius:50%;background:radial-gradient(circle,var(--c) 0%,color-mix(in srgb,var(--c) 55%,transparent) 36%,transparent 70%);opacity:.85;filter:blur(6px)}
.ar-ring{position:absolute;inset:-6%;border-radius:50%;border:2px solid color-mix(in srgb,var(--c) 70%,white);box-shadow:0 0 28px var(--c),inset 0 0 18px color-mix(in srgb,var(--c) 40%,transparent)}
.ar-face{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;background:var(--d,#141A4A);box-shadow:0 0 0 4px rgba(255,255,255,.65)}
.ar-face img{width:100%;height:100%;object-fit:cover;display:block}
.ar-sil{display:grid;place-items:end center;width:100%;height:100%;color:color-mix(in srgb,var(--c) 45%,white);background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--c) 30%,var(--d)),var(--d))}
.ar-sil svg{width:86%;height:86%}
.ar-breathe .ar-halo{animation:ar-glow 6s ease-in-out infinite}
@keyframes ar-glow{0%,100%{transform:scale(.94);opacity:.72}50%{transform:scale(1.04);opacity:.95}}
.ar-making{justify-items:center;text-align:center;padding-block:60px}
.ar-making-t{font:italic 400 1.4rem var(--serif);color:var(--gold-hi)}
.ar-making .ar-portrait .ar-face{animation:ar-in 2.2s ease-out both}
@keyframes ar-in{from{opacity:.2;transform:scale(.92)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ar-breathe .ar-halo,.ar-making .ar-portrait .ar-face,.ar-orb-move{animation:none!important}}

/* result */
.ar-result-top{display:grid;gap:56px;align-items:center;padding-top:36px}
@media (min-width:720px){.ar-result-top{grid-template-columns:auto 1fr;gap:64px;padding-top:24px}}
.ar-colour{color:var(--c);letter-spacing:.06em}
.ar-lead{font-size:1.12rem;line-height:1.6}
.ar-reading{gap:14px;border-color:color-mix(in srgb,var(--c) 55%,transparent);background:linear-gradient(170deg,color-mix(in srgb,var(--c) 10%,var(--surface)),var(--surface))}
.ar-reading p{margin:0;line-height:1.75;font-size:1.06rem}
.ar-reading h2{font-size:1.6rem;margin:0}
.ar-q,.ar-aff{display:grid;gap:4px;margin:6px 0 0;padding:14px 16px;border-radius:14px;background:var(--bg-2)}
.ar-aff{border-left:4px solid var(--c)}
.ar-aff p:last-child{font:italic 400 1.3rem/1.45 var(--serif);color:var(--gold-hi)}
.ar-moment{gap:14px;justify-items:center;text-align:center}
.ar-moment > *{margin:0}
.ar-moment h2{font-size:1.45rem}
.ar-orb{width:120px;height:120px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff 0%,var(--c) 38%,var(--d) 100%);box-shadow:0 0 40px var(--c)}
.ar-orb-move{animation:ar-orb 10s ease-in-out infinite}
@keyframes ar-orb{0%,100%{transform:scale(.82)}50%{transform:scale(1.08)}}
.ar-moment-t{max-width:30rem;line-height:1.65;font-size:1.06rem}
.ar-moment .ar-field{width:min(100%,320px);text-align:left}
.ar-moment .ar-actions{justify-content:center}
.ar-connect{gap:12px;border-color:var(--line)}
.ar-connect > *{margin:0}
.ar-connect h2{font-size:1.35rem;line-height:1.35}
.ar-connect .btn{justify-self:start}
.ar-part{display:grid;gap:12px}
.ar-part > *{margin:0}
.ar-part h2{font-size:1.5rem}
.ar-share{display:grid;gap:18px;align-items:start}
@media (min-width:680px){.ar-share{grid-template-columns:240px 1fr}}
.ar-cardimg{display:block;width:min(70vw,240px);height:auto;border-radius:14px;border:1px solid var(--line);box-shadow:0 12px 30px rgba(0,0,0,.35)}
.ar-affs .ar-opts{grid-template-columns:1fr}
.ar-end{padding-top:8px;border-top:1px solid var(--line-soft)}
.ar-closing{font:italic 400 1.15rem/1.6 var(--serif)!important;color:var(--gold-hi)}
.ar-support{gap:8px;border-color:var(--line)}
.ar-support p{margin:0;line-height:1.6}
.ar-opts .ar-opt span{min-width:0}
