/* Assembly Circles — closed-beta, accessible editorial presentation. */
:root{--circles-bg:#090d13;--circles-ink:#f3efe8;--circles-gold:#e3c68c;--circles-soft:#b7bab9;--circles-line:rgba(227,198,140,.2)}
body.circles-page{background:var(--circles-bg);color:var(--circles-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}
.circles-page *{box-sizing:border-box}
.circles-page a,.circles-page button{touch-action:manipulation}
.circles-page :focus-visible{outline:2px solid #d3ebf4;outline-offset:4px}
.circles-page .overline{color:var(--circles-gold)}
.circles-hero{min-height:615px;padding:85px 0 100px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(275px,.75fr);gap:65px;align-items:center}
.circles-hero h1,.circles-section h2,.circles-bottom h2{font:450 clamp(60px,8vw,122px)/.91 Georgia,"Times New Roman",serif;letter-spacing:-.066em;margin:20px 0 30px;color:var(--circles-ink)}
.circles-hero h1 em,.circles-section h2 em,.circles-bottom h2 em{font-style:normal;color:var(--circles-gold)}
.circles-lead{max-width:680px;color:#dedbd3;font-size:clamp(18px,2.2vw,24px);line-height:1.55;letter-spacing:-.025em}
.circles-status{margin:24px 0 0;border:1px solid rgba(227,198,140,.28);background:rgba(227,198,140,.07);color:#e0cfb0;display:flex;align-items:flex-start;gap:12px;padding:14px 17px;font-size:13px;line-height:1.55;max-width:620px}
.circles-status-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;margin-top:6px;background:var(--circles-gold)}
.circles-status.is-open{border-color:rgba(121,193,158,.36);background:rgba(92,159,120,.09);color:#d3e6db}
.circles-status.is-open .circles-status-dot{background:#a6d8bd}
.circles-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.circles-actions .next-button{min-height:53px}
.circles-symbol{position:relative;aspect-ratio:1/1;display:grid;place-items:center;isolation:isolate}
.circles-symbol:before{content:"";position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,rgba(227,198,140,.17),transparent 72%);filter:blur(15px);z-index:-1}
.circles-symbol span{font:clamp(125px,16vw,230px) Georgia,serif;color:var(--circles-gold);line-height:1;text-shadow:0 0 100px rgba(227,198,140,.22)}
.circles-symbol small{position:absolute;bottom:4%;font-size:9px;letter-spacing:.22em;color:#b7a582;text-align:center}
.circles-orbit{position:absolute;border:1px solid rgba(227,198,140,.2);border-radius:50%;transform:rotate(-23deg)}
.circles-orbit.outer{inset:5%}.circles-orbit.inner{inset:21%;border-style:dashed}
.circles-section{padding:95px 0 110px;border-top:1px solid var(--circles-line)}
.circles-choice-section{background:linear-gradient(160deg,#0c1118,#090d13)}
.circles-section-header{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:38px}
.circles-section-header h2,.circles-bottom h2{font-size:clamp(43px,5.5vw,73px);line-height:1.06;margin:12px 0 0}
.circles-section-header>p{max-width:320px;color:var(--circles-soft);font-size:15px;line-height:1.7}
.circles-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.circles-card{appearance:none;text-align:left;display:flex;align-items:flex-start;flex-direction:column;min-height:335px;width:100%;padding:30px;border:1px solid var(--circles-line);background:linear-gradient(150deg,rgba(255,255,255,.035),rgba(255,255,255,.007));color:inherit;cursor:pointer;font:inherit;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.circles-card:hover,.circles-card:focus-visible,.circles-card[aria-pressed="true"]{background:linear-gradient(155deg,rgba(227,198,140,.11),rgba(255,255,255,.012));border-color:rgba(227,198,140,.55)}
.circles-card:hover{transform:translateY(-3px)}
.circles-card-label{font-size:10px;letter-spacing:.16em;font-weight:800;color:#bea87c}
.circles-card-glyph{font:58px/1 Georgia,serif;color:var(--circles-gold);margin:35px 0 22px}
.circles-card strong{font:500 clamp(25px,2.7vw,35px)/1.15 Georgia,serif;letter-spacing:-.03em;margin-bottom:12px}
.circles-card>span:nth-last-child(2){font-size:14px;line-height:1.65;color:#b4b5b5;max-width:310px;flex:1}
.circles-card b{font-size:12px;color:var(--circles-gold);letter-spacing:.01em;margin-top:24px}
.circles-panel{margin-top:20px;border:1px solid rgba(227,198,140,.31);padding:33px;background:linear-gradient(135deg,#141a21,#0b1017)}
.circles-panel[hidden],.circles-page [hidden]{display:none!important}
.circles-panel-head{display:flex;justify-content:space-between;gap:25px}
.circles-panel h3{font:500 clamp(33px,4vw,53px)/1.1 Georgia,serif;margin:8px 0 13px}
.circles-panel-head p:last-child{color:#b8bcba;line-height:1.65;max-width:650px}
.circles-close{align-self:flex-start;min-width:42px;height:42px;border:1px solid var(--circles-line);background:#111821;color:#e8dfce;font:24px/1 sans-serif;cursor:pointer}
.circles-closed-note{margin:25px 0 15px;border:1px solid rgba(227,198,140,.19);padding:18px 20px;color:#ccc3ae;background:rgba(227,198,140,.06);line-height:1.6}
.circles-guest-action{font-size:13px;margin-top:15px}.circles-guest-action a{color:var(--circles-gold);text-decoration:underline;text-underline-offset:4px}
.circles-principles{background:#0e141b}
.circles-principle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.circles-principle-grid article{border-top:1px solid rgba(227,198,140,.38);padding:25px 0 0}
.circles-principle-grid article>span{font:12px Georgia,serif;color:var(--circles-gold)}
.circles-principle-grid h3{font:31px Georgia,serif;letter-spacing:-.03em;margin:20px 0 14px}
.circles-principle-grid p{font-size:14px;line-height:1.75;color:var(--circles-soft);max-width:340px}
.circles-bottom{border-top:1px solid var(--circles-line);background:radial-gradient(ellipse at 70% 100%,rgba(227,198,140,.12),transparent 60%),#10141b;padding:100px 0}
.circles-bottom h2{margin:18px 0 25px}.circles-bottom p:not(.overline){color:#bec0bf;font-size:17px;line-height:1.7;max-width:610px}
.circles-bottom .circles-actions{margin-top:30px}
.circles-moderation{padding:60px 0}.circles-moderation h2{font:55px Georgia,serif}.circles-moderation>p{max-width:650px;line-height:1.7;color:#bdc1c2}
.circles-list-header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:30px 0 13px}
.circles-list-header h4,.circles-form h4{font:30px Georgia,serif;margin:0;color:#eae5dc}
.circles-link-button{border:1px solid var(--circles-line);padding:9px 13px;color:var(--circles-gold);background:#111820;cursor:pointer}
.circle-thread-list{display:grid;gap:13px;margin:20px 0}
.circle-thread{border:1px solid var(--circles-line);padding:21px 22px;background:rgba(255,255,255,.025)}
.circle-thread h4{font:27px Georgia,serif;margin:9px 0 12px}
.circle-thread p{line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;color:#d2d2cf}
.circle-thread small{color:#aeb4b5}
.circle-thread-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}
.circle-thread-actions button{border:1px solid var(--circles-line);background:#1a2027;color:var(--circles-gold);min-height:40px;padding:9px 14px;cursor:pointer}
.circles-form{display:grid;gap:15px;border-top:1px solid var(--circles-line);margin-top:30px;padding-top:27px}
.circles-form label:not(.circles-check){display:grid;gap:7px;color:#ddd4c4;font-size:13px;font-weight:700}
.circles-form textarea,.circles-form input:not([type="checkbox"]),.circles-form select{width:100%;border:1px solid rgba(227,198,140,.33);background:#090d13;color:#fff;padding:13px 15px;font-size:14px;line-height:1.5;font-family:inherit;border-radius:2px;min-width:0}
.circles-form textarea{font-family:inherit;resize:vertical;min-height:100px}
.circles-check{display:flex;gap:10px;align-items:flex-start;color:#bfc4c3;font-size:13px;line-height:1.6}
.circles-check input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:#e3c68c}
.circles-submit{cursor:pointer;justify-self:start;border:1px solid var(--circles-gold);background:var(--circles-gold);color:#15120d;padding:13px 20px;min-height:46px;font-size:13px;font-weight:800}
.circles-form-status,.circle-status-text{font-size:13px;line-height:1.5;color:#d7c5a1;margin:0}
.circle-reply-box{border-left:2px solid rgba(227,198,140,.31);margin:18px 0 5px;padding-left:19px}
.circle-reply-item{border-bottom:1px solid rgba(227,198,140,.12);padding:10px 0}
.circle-reply-item p{margin:5px 0;color:#d1d1cf;white-space:pre-wrap;overflow-wrap:anywhere}
.circle-reply-item small{color:#aeb3b5}
.circles-privacy-note{font-size:12px;color:#a4acac}
.circles-moderator-card{padding:18px 20px;border:1px solid var(--circles-line);margin:12px 0}
.circles-moderator-card textarea{width:100%;margin:12px 0;padding:12px;color:var(--circles-ink);background:#080d13;border:1px solid var(--circles-line)}
.circles-moderator-card button{min-height:40px;padding:8px 14px;border:1px solid var(--circles-gold);color:var(--circles-gold);background:transparent;cursor:pointer;margin:4px}
@media(max-width:930px){
  .circles-hero{grid-template-columns:1fr .6fr;min-height:540px;padding:65px 0 80px;gap:30px}
  .circles-card{padding:24px;min-height:340px}
  .circles-card strong{font-size:26px}
  .circles-section{padding:75px 0}
}
@media(max-width:700px){
  .circles-hero{grid-template-columns:1fr;padding:46px 0 55px;gap:10px}
  .circles-hero h1{font-size:clamp(63px,15vw,100px);margin:16px 0 19px}
  .circles-symbol{display:none}
  .circles-lead{font-size:18px;line-height:1.55}
  .circles-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:21px}
  .circles-actions .next-button{min-height:52px;padding:10px;font-size:12px;line-height:1.2;gap:8px}
  .circles-actions .next-button>span{display:none}
  .circles-section{padding:63px 0 70px}
  .circles-section-header{display:block;margin-bottom:25px}
  .circles-section-header h2{font-size:clamp(44px,11vw,61px)}
  .circles-section-header>p{margin-top:20px}
  .circles-card-grid{grid-template-columns:1fr;gap:10px}
  .circles-card{min-height:200px;padding:24px}
  .circles-card-glyph{font-size:42px;margin:16px 0 12px}
  .circles-card strong{font-size:28px}
  .circles-card b{margin-top:17px}
  .circles-panel{padding:22px 17px}
  .circles-principle-grid{grid-template-columns:1fr;gap:27px}
  .circles-principle-grid h3{margin:11px 0}
  .circles-principle-grid p{max-width:none}
  .circles-bottom{padding:70px 0}
}
@media(max-width:355px){.circles-actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.circles-page *, .circles-page *:before,.circles-page *:after{transition:none!important;animation:none!important}}
