.public-nav-note{font-size:11px;color:#86868b}.public-hero{min-height:480px;padding-top:68px;padding-bottom:60px;gap:65px}.public-hero .hero-copy{max-width:540px}.public-hero .hero-art{margin-right:6px}.public-hero .hero-copy>p{font-size:17px;margin-bottom:25px}.enroll-form{max-width:435px}.enroll-form>label{display:block;font-size:10px;color:#6e6e73;margin-bottom:9px}.enroll-input-row{display:flex;align-items:center;gap:8px}.enroll-input-row input{min-width:0;flex:1;border:1px solid #d9d9df;border-radius:13px;height:47px;padding:0 15px;font-size:12px;color:var(--ink);background:#fff}.enroll-input-row input::placeholder{color:#a6a6ac}.enroll-input-row .button{height:47px;font-size:12px;padding:12px 20px;border-radius:13px}.enroll-form>small{display:block;color:#96969e;font-size:9px;margin-top:10px}.public-hero .hero-copy>.privacy-note{font-size:9px;line-height:1.7;max-width:423px;color:#aaaab0;margin:17px 0 0;letter-spacing:0}.enroll-result{font-size:11px;color:#2c8243;background:#eff8f0;border:1px solid #dcefe0;border-radius:12px;padding:12px 14px;line-height:1.6;margin:15px 0 0}.enroll-result.error{color:#ad4e3e;background:#fff3f0;border-color:#f5e2db}.enrolled-strip{border-radius:19px;background:#f5f5f7;padding:23px 28px;display:flex;align-items:center;gap:17px;margin-bottom:53px}.enrolled-avatars{display:flex;padding-left:3px}.enrolled-avatars>span{width:33px;height:33px;border:2px solid #f5f5f7;background:#e3e8f9;border-radius:50%;display:grid;place-items:center;font-size:10px;color:#6074b3;margin-left:-3px}.enrolled-avatars>span:nth-child(2){background:#f2e4da;color:#ae7e5a}.enrolled-avatars>span:last-child{background:#ddebe1;color:#6c9274}.enrolled-strip strong{font-size:21px;font-weight:600;letter-spacing:-.7px;margin-right:4px}.enrolled-strip>div:nth-child(2)>span{font-size:12px;color:#73737b}.enrolled-strip small{display:block;font-size:9px;color:#a1a1a7;margin-top:4px}.enrolled-private{margin-left:auto;color:#94949d;font-size:10px;display:flex;align-items:center;gap:7px}.enrolled-private svg{width:14px;height:14px}.public-codes{padding-bottom:60px}.public-codes .section-heading{margin-bottom:25px}.public-auto-note{display:flex;align-items:center;gap:7px;font-size:9px;color:#94949b}.public-auto-note .status-dot{width:5px;height:5px}.public-codes .code-toolbar{margin-bottom:20px}.public-codes .code-card{padding:20px 18px 16px}.public-code-state{font-size:8px;color:#7b9b86}.public-code-state.inactive{color:#a1a1a7}.public-code-description{font-size:9px;color:#a1a1a7}.public-codes .code-value{font-size:13px;margin:17px 0 13px}.login-page{background:#fafafa;min-height:100vh;display:flex;flex-direction:column}.login-main{display:flex;align-items:center;justify-content:center;flex:1;padding:65px 20px}.login-card{max-width:415px;width:100%;padding:35px;border:1px solid #e7e7ed;border-radius:24px;background:#fff;box-shadow:0 12px 40px #17203904}.login-symbol{width:45px;height:45px;background:#f2f6fe;color:#0071e3;display:grid;place-items:center;border-radius:14px;margin-bottom:24px}.login-symbol svg{width:23px;height:23px}.login-card h1{font-size:34px;letter-spacing:-1.1px;line-height:1.1;margin:0 0 14px}.login-card .login-intro{font-size:12px;line-height:1.7;color:#96969e;margin-bottom:27px}.login-card .field input{height:46px}.login-card .button{width:100%;margin-top:4px;border-radius:12px}.login-note{font-size:9px;line-height:1.8;color:#aaaab0;margin-top:20px;margin-bottom:0}.login-back{display:block;margin-top:23px;text-align:center;color:#86868b;font-size:10px}.admin-private-badge{display:flex;gap:6px;align-items:center;color:#86868b;font-size:10px}.admin-private-badge svg{width:13px;height:13px}.account-ip{font-size:9px;color:#92929b;margin:13px 0 0;font-family:Consolas,monospace;display:flex;gap:5px;align-items:center;overflow-wrap:anywhere}.account-ip svg{width:11px;height:11px;flex-shrink:0}.visitors-section{padding:43px 0 60px;min-height:550px}.visitor-ip{font-family:Consolas,monospace;color:#5c6f88}.visitor-source{font-size:9px;color:#92929c}.visitor-heading-note{font-size:11px;color:#96969e;line-height:1.8;margin:12px 0 24px}.admin-logout{font-size:10px;color:#86868b;border:0;background:transparent;padding:8px;white-space:nowrap}.admin-logout:hover{color:var(--blue)}.visitor-table{min-width:720px}.visitor-table td{font-size:10px}.visitor-table td:nth-child(2){font-family:Consolas,monospace}.visitor-table .visitor-event{font-size:10px;color:#6d6d75}.admin-hero{min-height:295px;padding-top:42px;padding-bottom:42px}.admin-hero h1{font-size:50px;letter-spacing:-2.5px}.admin-hero .hero-art{transform:scale(.8);transform-origin:right center;height:250px}.admin-hero .hero-copy>p{font-size:14px;margin:18px 0 20px}.admin-hero .eyebrow{font-size:9px}.admin-page .metrics{margin-bottom:40px}.admin-page .desktop-nav{gap:23px}.admin-page .brand-light{font-size:13px}.admin-page .global-nav .nav-right{gap:10px}.admin-page .nav-link{font-size:11px}.visitor-pill{border:0;background:#f0f5fc;color:#6882a5;border-radius:5px;font-size:9px;padding:4px 7px;cursor:pointer}.visitor-pill:hover{text-decoration:underline}@media(max-width:1100px){.public-hero{gap:20px}.public-hero .hero-art{transform:scale(.8);width:420px;margin-left:-45px}.public-hero .hero-copy{min-width:330px}.public-hero h1{font-size:57px}.public-auto-note{max-width:200px;font-size:8px;line-height:1.7}.enrolled-private{font-size:9px}.admin-page .brand-light{display:none}.admin-page .desktop-nav{gap:18px}.admin-page .nav-inner{gap:18px}}@media(max-width:760px){.public-nav-note{font-size:9px}.public-hero{padding-top:43px;padding-bottom:35px;min-height:0}.public-hero .hero-copy{min-width:0;max-width:none}.public-hero h1{font-size:54px}.public-hero .hero-copy>p{font-size:15px;margin-bottom:25px}.enroll-form{text-align:left;margin:0 auto;max-width:420px}.public-hero .hero-copy>.privacy-note{font-size:8px;max-width:400px;margin:14px auto 0;text-align:left}.enroll-form>label{font-size:10px}.enroll-input-row input{height:45px;font-size:11px}.enroll-input-row .button{height:45px;font-size:11px;gap:8px;padding:10px 16px}.public-hero .hero-art{margin:32px auto -37px;width:440px;max-width:100%;transform:scale(.8);height:300px;transform-origin:top center}.enrolled-strip{padding:20px;margin-bottom:37px;gap:12px;flex-wrap:wrap}.enrolled-avatars>span{width:29px;height:29px;font-size:9px}.enrolled-strip strong{font-size:22px}.enrolled-strip>div:nth-child(2)>span{font-size:11px}.enrolled-strip small{font-size:8px}.enrolled-private{margin-left:0;flex-basis:100%;justify-content:center;font-size:8px;margin-top:5px;padding-top:12px;border-top:1px solid #e6e6ec}.public-codes .section-heading{align-items:flex-start;flex-direction:column;gap:16px}.public-codes h2{font-size:24px}.public-codes .section-description{font-size:10px}.public-auto-note{max-width:none;font-size:8px}.public-codes .code-toolbar{gap:10px}.public-codes .search-field input{width:100px;font-size:9px}.public-codes .code-card{padding:18px 14px 14px}.public-codes .code-value{font-size:11px}.public-code-description{font-size:8px}.public-codes .source-note{font-size:8px}.admin-page .mobile-nav{gap:23px}.admin-page .mobile-nav .nav-link{font-size:10px}.admin-page .nav-inner{gap:10px}.admin-page .nav-right{gap:2px!important}.admin-logout{font-size:9px;padding:6px}.admin-page .local-badge{display:none}.admin-hero{padding-top:32px}.admin-hero h1{font-size:48px}.admin-hero .hero-art{height:260px;transform-origin:top center;margin-bottom:-65px}.account-ip{font-size:8px}.visitors-section{padding-top:30px}.visitor-heading-note{font-size:10px}.login-card{padding:28px}.login-card h1{font-size:31px}}@media(max-width:410px){.public-hero h1{font-size:49px}.public-nav-note{font-size:8px}.public-hero .hero-art{transform:scale(.74);margin-bottom:-65px}.enroll-input-row .button{font-size:10px;padding:10px 13px}.enroll-input-row input{padding:0 12px}.public-codes h2{font-size:23px}.public-codes .code-value{font-size:11px}.public-codes .code-toolbar{gap:8px}.public-codes .search-field input{width:97px}.public-codes .segmented button{font-size:9px;padding:6px 9px}.admin-page .mobile-nav{gap:18px}.admin-page .brand{font-size:13px}.admin-page .admin-logout{font-size:8px}.admin-page .nav-right{gap:0!important}}
@media(min-width:761px) and (max-width:1000px){.public-hero{display:block;text-align:center;padding-top:45px;padding-bottom:35px;min-height:0}.public-hero .hero-copy{min-width:0;max-width:none}.public-hero .eyebrow{justify-content:center}.public-hero h1{font-size:57px}.public-hero .enroll-form{text-align:left;margin:0 auto}.public-hero .hero-copy>.privacy-note{text-align:left;margin:16px auto 0;max-width:435px}.public-hero .hero-art{width:440px;max-width:100%;height:300px;transform:scale(.82);transform-origin:top center;margin:30px auto -45px}}
@media(max-width:760px){.public-page .enroll-input-row input,.login-page .field input,.admin-page .field input,.admin-page .field textarea,.admin-page .field select{font-size:16px}.public-page .enroll-input-row .button{font-size:12px}}@media(max-width:360px){.public-page .brand-light{display:none}.public-hero .hero-art{transform:scale(.64);margin-bottom:-90px}.public-page .enroll-input-row .button{font-size:11px;padding:10px 12px}}
@media(min-width:761px) and (max-width:1050px){.public-codes .codes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:360px){.public-codes .code-toolbar{flex-wrap:wrap}.public-codes .search-field{margin-left:auto}}
@media(max-width:360px){.public-hero .orbit-two{width:410px;height:250px;left:calc(50% - 205px)}}
@media(max-width:760px){.admin-hero .hero-art{transform:scale(.72)}}@media(max-width:500px){.admin-page .code-toolbar{flex-wrap:wrap}.admin-page .code-toolbar .search-field{margin-left:auto}}@media(max-width:360px){.admin-hero .hero-art{transform:scale(.64)}.admin-hero .orbit-two{width:410px;height:250px;left:calc(50% - 205px)}}
@media(min-width:761px) and (max-width:1000px){.admin-hero .hero-art{transform:scale(.76)}}

/* Public FAQ */
.public-faq{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:first baseline;gap:64px;border-top:1px solid var(--line);padding-top:44px;padding-bottom:64px;text-align:start}
.public-faq h2{margin:0;font-size:32px;line-height:1.35;font-weight:650;letter-spacing:-.8px}
.faq-list{min-width:0}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item:last-child{border-bottom:0}
.faq-summary{position:relative;display:block;list-style:none;cursor:pointer;padding:20px 40px 20px 0}
.faq-summary::-webkit-details-marker{display:none}
.faq-summary::marker{content:""}
.faq-summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}
.faq-item h3{margin:0;font-size:18px;line-height:1.6;font-weight:600;letter-spacing:normal;color:var(--ink)}
.faq-chevron{position:absolute;right:0;top:50%;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;color:var(--muted);transform:translateY(-50%);pointer-events:none}
.faq-item[open]>.faq-summary .faq-chevron{transform:translateY(-50%) rotate(180deg);color:var(--blue)}
.faq-item p{margin:0;padding:0 40px 24px 0;color:var(--faq-copy,#6e6e73);font-size:15px;line-height:1.9;overflow-wrap:anywhere}
.faq-item a{display:inline-block;color:var(--blue);text-decoration:none;text-underline-offset:4px;overflow-wrap:anywhere}
.faq-item a:hover{text-decoration:underline}
.faq-item a:focus-visible{outline:2px solid var(--blue);outline-offset:5px;border-radius:3px}
[data-theme=dark] .public-faq{--faq-copy:#b8b8c0}
@media(max-width:1000px){.public-faq{grid-template-columns:145px minmax(0,1fr);gap:36px}}
@media(max-width:760px){.public-faq{grid-template-columns:1fr;align-items:start;gap:18px;padding-top:30px;padding-bottom:42px}.public-faq h2{font-size:28px}.faq-summary{padding-top:18px;padding-bottom:18px}.faq-item h3{font-size:16px}.faq-item p{font-size:14px;line-height:1.85;padding-right:0;padding-bottom:22px}}
@media(prefers-reduced-motion:no-preference){.faq-chevron{transition:transform .18s ease,color .18s ease}}

/* Public hero motion */
/* Decorative motion is confined to the public hero, preserving base transforms. */
@keyframes th-public-gift-float{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -8px;rotate:1.25deg}}
@keyframes th-public-check-float{0%,100%{translate:0 0}50%{translate:-2px -6px}}
@keyframes th-public-code-float{0%,100%{translate:0 0}50%{translate:2px 6px}}
@keyframes th-public-glint{0%,100%{opacity:.6}50%{opacity:1}}
@keyframes th-public-status{0%,100%{opacity:.65}50%{opacity:1}}
@keyframes th-public-orbit{from{offset-distance:0%}to{offset-distance:100%}}
@media(prefers-reduced-motion:no-preference){
  .public-hero .art-app{animation:th-public-gift-float 7s ease-in-out infinite}
  .public-hero .tag-check{animation:th-public-check-float 8s ease-in-out -1.2s infinite}
  .public-hero .tag-gift{animation:th-public-code-float 8.8s ease-in-out -3.6s infinite}
  .public-hero .app-glint{animation:th-public-glint 6s ease-in-out -1s infinite}
  .public-hero .art-caption .status-dot{animation:th-public-status 4.2s ease-in-out infinite}
  @supports(offset-path:ellipse(50% 50% at 50% 50%)){
    .public-hero .orbit::after{content:"";position:absolute;left:0;top:0;width:6px;height:6px;border-radius:50%;background:#73b6fa;box-shadow:0 0 0 4px #73b6fa0d;offset-path:ellipse(50% 50% at 50% 50%);offset-rotate:0deg;offset-anchor:center;animation:th-public-orbit 28s linear -5s infinite;opacity:.85}
    .public-hero .orbit-two::after{width:4px;height:4px;animation-duration:38s;animation-delay:-16s;animation-direction:reverse;opacity:.65}
    .public-hero .hero-art>.orbit-dot{opacity:0}
  }
  .public-hero .hero-art:not(.hero-motion-active) .art-app,
  .public-hero .hero-art:not(.hero-motion-active) .tag-check,
  .public-hero .hero-art:not(.hero-motion-active) .tag-gift,
  .public-hero .hero-art:not(.hero-motion-active) .app-glint,
  .public-hero .hero-art:not(.hero-motion-active) .art-caption .status-dot,
  .public-hero .hero-art:not(.hero-motion-active) .orbit::after{animation-play-state:paused}
}
