/* Studio Circle: one open community board, five distinct invitations. */
.circle-intro { padding-top:clamp(40px,6vw,84px); padding-bottom:40px; }
.circle-intro__top { display:flex; justify-content:space-between; align-items:baseline; border-bottom:1px solid var(--line); padding-bottom:16px; gap:20px; }
.circle-intro__top .eyebrow { margin:0; }
.circle-edition { font-size:11px; color:var(--ink-soft); }
.circle-intro__grid { display:grid; grid-template-columns:1.15fr 1fr; gap:8%; align-items:center; padding:40px 0; }
.circle-intro h1 { font-family:var(--font-display); font-size:clamp(66px,8vw,116px); font-weight:700; line-height:.95; letter-spacing:-.065em; }
.circle-intro h1 em { font-weight:400; color:var(--burgundy); }
.circle-period { color:var(--rose); }
.circle-subtitle { font-size:clamp(17px,2vw,23px); margin:22px 0 0; }
.circle-intro__copy { max-width:470px; padding-top:30px; }
.circle-intro__copy p { font-size:16px; line-height:1.8; }
.circle-intro__copy .script { display:block; font-size:39px; color:var(--orchid); text-align:right; transform:rotate(-6deg); padding:8px 25px 12px; }
.circle-paths { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border:1px solid var(--line); border-radius:12px; overflow:hidden; box-shadow:0 8px 24px #692a4206; }
.circle-paths a { display:flex; flex-direction:column; position:relative; text-decoration:none; gap:7px; padding:22px 18px 28px; background:var(--paper); border-right:1px solid var(--line); transition:background .2s; }
.circle-paths a:last-child { border-right:0; }
.circle-paths a:hover,.circle-paths a:focus-visible { background:var(--blush); }
.path-number { font-family:var(--font-display); font-style:italic; font-size:26px; color:var(--orchid); }
.circle-paths strong { font-size:14px; font-weight:600; }
.circle-paths a > span:not(.path-number):not(.path-arrow) { font-size:11px; color:var(--ink-soft); }
.path-arrow { position:absolute; right:16px; top:20px; color:var(--burgundy); transition:transform .2s; }
.circle-paths a:hover .path-arrow { transform:translate(2px,-2px); }
.circle-board { display:grid; grid-template-columns:1fr 1fr; gap:26px; padding-block:12px 54px; align-items:stretch; }
.circle-card { min-width:0; padding:clamp(24px,3.5vw,48px); position:relative; border:1px solid #dfd0c7; border-radius:5px; background:var(--paper); box-shadow:0 5px 16px #692a4206; scroll-margin-top:95px; }
.circle-card:target { outline:2px solid var(--orchid); outline-offset:5px; }
.circle-card__meta { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.circle-card__meta > span { font-size:10px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.circle-share { appearance:none; border:0; border-bottom:1px solid #692a4240; background:none; color:var(--burgundy); font-size:11px; padding:8px 0; cursor:pointer; white-space:nowrap; }
.circle-share:hover { border-color:var(--burgundy); }
.circle-card h2 { font-family:var(--font-display); font-size:clamp(32px,3.4vw,48px); font-weight:500; line-height:1.12; letter-spacing:-.035em; margin:24px 0 14px; }
.circle-tagline { font-size:17px; font-weight:600; color:var(--burgundy); line-height:1.5; }
.circle-card > p:not(.circle-tagline):not(.circle-support) { font-size:15px; line-height:1.8; }
.circle-card .circle-support { margin:17px 0 0; font-size:12px; color:var(--ink-soft); line-height:1.7; }
.circle-form-link { margin-top:12px; min-height:48px; font-size:13px; gap:20px; text-align:center; }
.circle-object { height:190px; display:grid; place-items:center; }
.circle-card--insider-club { background:linear-gradient(145deg,#fbf4ed,#f8e5ec); }
.circle-chat { width:min(100%,285px); display:flex; flex-direction:column; gap:10px; transform:rotate(-3deg); }
.circle-chat > span { width:fit-content; padding:13px 20px; border-radius:20px; font-size:16px; position:relative; box-shadow:inset 0 1px #ffffff80,0 4px 10px #692a420d; }
.chat-grey { background:linear-gradient(#fffdfa,#e7dedb); border-bottom-left-radius:5px!important; }
.chat-rose { align-self:end; background:linear-gradient(#b45e8b,var(--orchid)); color:var(--paper); border-bottom-right-radius:5px!important; }
.chat-rose::after { content:''; position:absolute; bottom:0; right:-5px; background:var(--orchid); width:13px; height:12px; border-radius:0 0 0 12px; transform:skewX(25deg); }
.circle-chat small { text-align:right; font-size:10px; padding-right:5px; color:var(--ink-soft); }
.circle-polaroid { margin:0; width:160px; padding:10px 10px 12px; background:linear-gradient(120deg,#fff,var(--paper)); box-shadow:1px 7px 12px #692a4220; transform:rotate(7deg); transition:transform .25s; position:relative; }
.circle-polaroid::before { content:''; position:absolute; top:-10px; left:50px; width:66px; height:23px; transform:rotate(-11deg); background:repeating-linear-gradient(90deg,#dca7bc50 0 2px,#dca7bc65 2px 3px); }
.circle-polaroid img { width:140px; height:132px; object-fit:contain; background:var(--lilac); }
.circle-polaroid figcaption { font-family:var(--font-script); font-size:23px; text-align:center; margin-top:6px; }
.circle-card--model-collective:hover .circle-polaroid { transform:rotate(3deg); }
.circle-card .form-availability { border-left:2px solid var(--rose); padding-left:12px; font-size:12px!important; }
.circle-card--creative-match { background:var(--lilac); }
.match-tool { width:100%; border-radius:12px; border:1px solid #ffffff90; padding:18px; background:#faf7f195; box-shadow:0 8px 22px #692a4209,inset 0 1px white; }
.match-tool .label { font-size:9px; letter-spacing:.12em; margin-bottom:12px; }
.role-picks { display:flex; flex-wrap:wrap; gap:6px; }
.role-picks button { font-family:var(--font-body); font-size:11px; padding:8px 12px; min-height:36px; border:1px solid #cfb9c3; border-radius:50px; background:var(--paper); cursor:pointer; transition:background .2s,color .2s; }
.role-picks button:hover,.role-picks button[aria-pressed=true] { background:var(--burgundy); border-color:var(--burgundy); color:var(--paper); }
.role-hint { font-size:11px; line-height:1.5; margin:12px 0 0; min-height:2.8em; }
.circle-card--brand-connection { background:#f1e9df; }
.circle-envelope { position:relative; width:210px; height:125px; margin-top:40px; perspective:500px; background:linear-gradient(150deg,#dca7bc,#c1849f); border-radius:3px; box-shadow:0 10px 14px #692a4220; }
.envelope-letter { position:absolute; inset:-40px 18px 20px; background:var(--paper); padding:15px; font-size:8px; letter-spacing:.12em; box-shadow:0 -2px 5px #692a4210; transition:transform .25s; }
.envelope-letter em { font-family:var(--font-display); display:block; font-size:23px; letter-spacing:-.02em; line-height:1.15; margin-top:8px; }
.envelope-front { position:absolute; inset:0; background:linear-gradient(33deg,#efcede 49.5%,transparent 50%),linear-gradient(-33deg,#e3b8cb 49.5%,transparent 50%); border-radius:0 0 3px 3px; }
.envelope-seal { position:absolute; bottom:20px; left:85px; width:42px; height:42px; border-radius:50%; background:linear-gradient(120deg,#95425e,#692a42); color:var(--cream); display:grid; place-items:center; font-family:var(--font-script); font-size:23px; box-shadow:inset 1px 1px 2px #ffffff60,0 2px 3px #692a4230; }
.circle-card--brand-connection:hover .envelope-letter { transform:translateY(-7px); }
.circle-card--casting-board { grid-column:1/-1; padding-right:53%; min-height:460px; background:radial-gradient(#692a4210 .7px,transparent .8px) 0 0/7px 7px,#eae0d5; }
.casting-announcements { position:absolute; right:4%; top:42px; bottom:42px; width:42%; display:grid; align-items:center; }
.casting-empty { padding:38px 25px 24px; text-align:center; background:var(--paper); box-shadow:0 8px 16px #692a4220; transform:rotate(2deg); position:relative; }
.casting-pin { position:absolute; top:12px; left:calc(50% - 5px); width:10px; height:10px; border-radius:50%; background:radial-gradient(at 35% 25%,#d49dad,#692a42); box-shadow:1px 3px 3px #692a4250; }
.casting-empty .label { font-size:9px; color:var(--orchid); margin-bottom:15px; }
.casting-empty h3 { font-family:var(--font-display); font-size:30px; line-height:1.15; margin-bottom:17px; }
.casting-empty > p:not(.label) { font-size:13px; line-height:1.7; }
.casting-empty .script { font-size:28px; color:var(--orchid); }
.casting-announcement dl { display:grid; grid-template-columns:auto 1fr; gap:8px 16px; font-size:13px; }.casting-announcement dd { margin:0; }
.circle-outro { padding-block:15px 65px; display:flex; align-items:center; justify-content:center; gap:20px; flex-wrap:wrap; }
.circle-outro p { margin:0; font-family:var(--font-display); font-size:23px; }
.circle-outro a { font-size:12px; margin-left:auto; }
.circle-share[hidden] { display:none; }
@media(min-width:901px) and (max-width:1120px) { .site-nav__list { gap:17px; } .site-nav__list a { font-size:13px; } .site-header__inner { gap:18px; } }
@media(max-width:760px) { .circle-intro__grid { grid-template-columns:1fr; gap:14px; padding:32px 0; }.circle-intro__copy { padding-top:0; max-width:none; }.circle-intro__copy .script { font-size:32px; }.circle-edition { display:none; }.circle-paths { grid-template-columns:1fr 1fr; }.circle-paths a { border-bottom:1px solid var(--line); padding:16px; }.circle-paths a:last-child { grid-column:1/-1; border-bottom:0; }.circle-paths a:nth-child(even) { border-right:0; }.circle-board { grid-template-columns:1fr; gap:20px; }.circle-card--casting-board { padding:28px; }.casting-announcements { position:static; width:100%; margin:25px 0; }.circle-card--casting-board .circle-form-link { width:100%; }.circle-outro { text-align:center; gap:12px; }.circle-outro a { margin:0; }.circle-outro p { font-size:21px; }.circle-card__meta { gap:8px; }.circle-card__meta > span { font-size:9px; }.circle-object { height:180px; }.circle-form-link { max-width:100%; white-space:normal; }.role-picks button { min-height:44px; } }
@media(prefers-reduced-motion:reduce) { .circle-paths a,.path-arrow,.circle-polaroid,.envelope-letter,.role-picks button { transition:none; } }
/* Actual studio artwork and photographed flowers replace the miniature icons. */
.circle-artwork-wrap { margin:20px 0 25px; min-width:0; }
.circle-still-life { display:block; width:100%; padding:0; border:0; background:none; text-align:left; cursor:pointer; color:var(--burgundy); }
.circle-still-life__art { position:relative; display:block; width:100%; height:245px; margin-bottom:17px; }
.circle-still-life__image { position:absolute; width:78%; height:175px; left:4%; top:28px; object-fit:contain; transform:rotate(-5deg); filter:drop-shadow(3px 12px 8px #44233120); transition:transform .2s; }
.circle-still-life__flower { position:absolute; width:38%; height:130px; object-fit:contain; right:0; bottom:15px; transform:rotate(12deg); filter:drop-shadow(3px 8px 5px #44233120); }
.circle-still-life__caption { position:absolute; bottom:0; left:0; font:500 8px/1.6 var(--font-body); letter-spacing:.11em; color:var(--ink-soft); }
.circle-still-life__action { display:inline-flex; align-items:center; min-height:44px; padding:10px 0; border-bottom:1px solid #bda7b1; font:500 12px/1.6 var(--font-body); }
.circle-still-life:hover .circle-still-life__image { transform:rotate(-2deg) translateY(-3px); }
.circle-still-life--1 .circle-still-life__image { width:72%; height:210px; top:0; left:14%; transform:rotate(5deg); }
.circle-still-life--2 .circle-still-life__image { width:75%; height:165px; top:32px; left:0; transform:rotate(3deg); }
.circle-still-life--2 .circle-still-life__flower { height:125px; right:1%; bottom:12px; }
.circle-still-life--3 .circle-still-life__image { width:60%; height:205px; left:7%; top:0; transform:rotate(-4deg); }
.circle-still-life--3 .circle-still-life__flower { height:160px; width:39%; right:4%; bottom:10px; }
.circle-still-life--4 .circle-still-life__art { height:140px; }.circle-still-life--4 .circle-still-life__image { width:140px; height:115px; left:0; top:0; transform:rotate(-10deg); }
.circle-card--casting-board { min-height:650px; }.circle-card--creative-match .circle-object { margin-top:10px; }.circle-card .casting-pin { width:80px; height:25px; top:-12px; left:calc(50% - 40px); border-radius:0; background:repeating-linear-gradient(87deg,#dca7bc70 0 2px,#f2c4de70 2px 4px); box-shadow:none; transform:rotate(-5deg); }
@media(max-width:760px) { .circle-still-life__art { height:220px; }.circle-still-life__image { height:150px; }.circle-still-life__flower { height:115px; }.circle-still-life--1 .circle-still-life__image { height:185px; }.circle-still-life--3 .circle-still-life__image { height:185px; }.circle-still-life--3 .circle-still-life__flower { height:135px; }.circle-still-life__caption { font-size:7px; }.circle-card--casting-board { min-height:0; } }
@media(prefers-reduced-motion:reduce) { .circle-still-life__image { transition:none; }.circle-still-life:hover .circle-still-life__image { transform:rotate(-5deg); } }
