/* ============================================================
   CIRCLE — the women's community
   Scoped to body.d-circle. 1rem = 10px.
   ============================================================ */
body.d-circle{
  --cc-blush:#fff5f7;--cc-petal:#fde4ea;--cc-rose:#db2777;--cc-berry:#9d174d;--cc-plum:#4a1d3f;--cc-ink:#2d1227;--cc-soft:#5d4257;--cc-mute:#7a6074;--cc-line:#f5d7df;--cc-gold:#d4a24c;
  --bg-primary:var(--cc-blush);--bg-secondary:var(--cc-petal);--bg-card:#fff;--bg-inset:#fdeef2;
  --fg-primary:var(--cc-ink);--fg-soft:var(--cc-soft);--fg-muted:var(--cc-mute);--border-color:var(--cc-line);--border-strong:#eab8c6;
  background:var(--cc-blush);color:var(--cc-ink);font-family:'Nunito Sans',system-ui,sans-serif
}
body.d-circle h1,body.d-circle h2,body.d-circle h3{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-.01em;line-height:1.05}
body.d-circle em{font-style:italic;font-weight:500;color:var(--cc-berry)}
.cc-kick{display:inline-flex;align-items:center;gap:.8rem;font-size:1.2rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--cc-berry);margin-bottom:1.4rem}

body.d-circle .bx-nav{background:rgba(255,245,247,.86)}
body.d-circle .bx-brand-mark{border-radius:50%;background:linear-gradient(135deg,var(--cc-rose),var(--cc-plum));font-family:'Playfair Display',serif}
body.d-circle .bx-brand-txt b{font-family:'Playfair Display',serif;font-size:1.9rem}
body.d-circle .bx-nav-links a{font-size:1.35rem;color:var(--cc-soft)}
body.d-circle .bx-nav-links a::after{background:var(--cc-rose);height:2px}
body.d-circle .bx-nav-cta{background:var(--cc-plum);border-radius:999px}

/* hero */
.cc-hero{position:relative;overflow:hidden;padding:calc(var(--nav-h) + 6rem) 3rem 8rem;background:radial-gradient(700px 500px at 100% 0%,var(--cc-petal),transparent 60%),radial-gradient(600px 400px at 0% 100%,#fbe8d9,transparent 60%),var(--cc-blush)}
.cc-hero-in{position:relative;z-index:1;max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:4rem;align-items:center}
.cc-hero-in>*{min-width:0}
.cc-hero h1{font-size:clamp(5rem,7.6vw,9.4rem);color:var(--cc-plum)}
.cc-tag{font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(2rem,2.4vw,2.6rem);color:var(--cc-berry);margin-top:1.6rem}
.cc-lede{font-size:1.7rem;line-height:1.7;color:var(--cc-soft);margin-top:1.8rem;max-width:48ch}
.cc-actions{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:3.2rem}
.cc-btn{display:inline-flex;align-items:center;gap:1rem;padding:1.6rem 2.8rem;border-radius:999px;font-size:1.5rem;font-weight:700;transition:transform .25s var(--ease),background .25s,box-shadow .25s}
.cc-btn-main{background:var(--cc-plum);color:#fff;box-shadow:0 14px 30px rgba(74,29,63,.25)}
.cc-btn-main:hover{background:var(--cc-berry);transform:translateY(-2px)}
.cc-btn-soft{background:#fff;color:var(--cc-plum);box-shadow:0 0 0 1px var(--cc-line)}
.cc-btn-soft:hover{box-shadow:0 0 0 1px var(--cc-rose)}

.cc-rings{position:relative;aspect-ratio:1;max-width:540px;width:100%;justify-self:center}
.cc-ring{position:absolute;left:var(--x);top:var(--y);width:var(--s);aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;padding:1.6rem;mix-blend-mode:multiply;will-change:transform}
.cc-ring b{font-family:'Playfair Display',serif;font-style:italic;font-weight:500;font-size:clamp(1.4rem,1.5vw,1.8rem);line-height:1.2;color:var(--cc-plum);mix-blend-mode:normal}
.cc-t-a{background:rgba(219,39,119,.22)}
.cc-t-b{background:rgba(212,162,76,.3)}
.cc-t-c{background:rgba(157,23,77,.2)}
.cc-t-d{background:rgba(244,114,182,.28)}
.cc-t-e{background:rgba(255,255,255,.7);border:2px solid var(--cc-rose);mix-blend-mode:normal;z-index:2}
.fx2 .cc-t-e{animation:cc-breathe 5s ease-in-out infinite}
@keyframes cc-breathe{50%{box-shadow:0 0 0 18px rgba(219,39,119,.08)}}

/* sections */
.cc-sec{padding:9rem 3rem 0}
.cc-sec>*{max-width:var(--max-w);margin-left:auto;margin-right:auto}
.cc-head{text-align:center;margin-bottom:4.4rem}
.cc-head .cc-kick{justify-content:center}
.cc-sec h2{font-size:clamp(3.6rem,5vw,5.6rem);color:var(--cc-plum)}

.cc-about{display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem;align-items:start}
.cc-about>*{min-width:0}
.cc-prose p{font-size:1.8rem;line-height:1.8;color:var(--cc-soft)}
.cc-prose p+p{margin-top:1.6rem}
.cc-prose p:last-child{font-family:'Playfair Display',serif;font-style:italic;font-size:2.2rem;color:var(--cc-berry)}

.cc-circles{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}
.cc-c{width:240px;aspect-ratio:1;border-radius:50%;background:#fff;border:1px solid var(--cc-line);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2.6rem;box-shadow:0 20px 40px rgba(157,23,77,.06);transition:transform .35s var(--ease),box-shadow .35s}
.cc-c:nth-child(even){margin-top:4rem}
.cc-c:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 30px 60px rgba(157,23,77,.12)}
.cc-c-ico{width:50px;height:50px;border-radius:50%;background:var(--cc-petal);color:var(--cc-berry);display:flex;align-items:center;justify-content:center;font-size:1.9rem;margin-bottom:1.2rem}
.cc-c h3{font-size:2rem;color:var(--cc-plum)}
.cc-c p{font-size:1.3rem;line-height:1.5;color:var(--cc-soft);margin-top:.6rem}

.cc-quote{margin-top:10rem;padding:9rem 3rem;background:var(--cc-plum);color:#fff;text-align:center;position:relative;overflow:hidden}
.cc-quote::before,.cc-quote::after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.12)}
.cc-quote::before{width:520px;height:520px;left:-160px;top:-200px}
.cc-quote::after{width:420px;height:420px;right:-120px;bottom:-220px}
.cc-quote blockquote{position:relative;max-width:980px;margin:0 auto;font-family:'Playfair Display',serif;font-style:italic;font-weight:500;font-size:clamp(3rem,4.4vw,5rem);line-height:1.25}
.cc-quote blockquote::before{content:'\201C';display:block;font-size:10rem;line-height:.6;color:var(--cc-gold)}

.cc-note{max-width:860px!important;background:#fff;border-radius:32px;padding:5rem;border:1px solid var(--cc-line);box-shadow:0 30px 70px rgba(157,23,77,.08);position:relative}
.cc-note::after{content:'';position:absolute;right:3rem;top:-26px;width:52px;height:52px;border-radius:50%;background:var(--cc-rose);box-shadow:-18px 12px 0 -6px var(--cc-gold)}
.cc-note-t{font-family:'Playfair Display',serif;font-size:clamp(2rem,2.3vw,2.4rem);line-height:1.6;color:var(--cc-ink)}
.cc-thanks{margin-top:2.4rem;padding-top:2rem;border-top:1px dashed var(--cc-line);font-size:1.6rem;color:var(--cc-soft)}
.cc-thanks b{color:var(--cc-berry)}

.cc-values{list-style:none;margin:0 auto;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:1.2rem;max-width:900px!important}
.cc-values li{padding:1.1rem 2rem;border-radius:999px;background:#fff;border:1px solid var(--cc-line);font-weight:700;font-size:1.5rem;color:var(--cc-berry)}
.cc-values li:nth-child(3n+1){background:var(--cc-petal)}

.cc-gal{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.cc-gal-item{padding:0;border-radius:24px;overflow:hidden;aspect-ratio:1;cursor:zoom-in}
.cc-gal-item img{width:100%;height:100%;object-fit:cover}
.cc-rev{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}
.cc-rev figure{background:#fff;border-radius:24px;padding:3rem;border:1px solid var(--cc-line)}
.cc-rev blockquote{font-family:'Playfair Display',serif;font-style:italic;font-size:1.8rem;line-height:1.55}
.cc-rev figcaption{margin-top:1.2rem;color:var(--cc-mute);font-weight:700}

.cc-contact{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding:5rem;border-radius:32px;background:#fff;border:1px solid var(--cc-line)}
.cc-contact>*{min-width:0}
.cc-contact-lede{font-size:1.65rem;line-height:1.7;color:var(--cc-soft);margin:1.6rem 0 3rem}
body.d-circle .ci{border-radius:18px}
body.d-circle .ci-ico{background:var(--cc-petal);color:var(--cc-berry)}
body.d-circle .contact-form{border-radius:24px;background:var(--cc-blush);border:0}
body.d-circle .contact-form h3{font-family:'Playfair Display',serif;font-size:2.6rem;margin-bottom:1.4rem;color:var(--cc-plum)}
body.d-circle .cf-none p{font-size:1.5rem;color:var(--cc-soft);margin:1rem 0 1rem}
body.d-circle .cf-field input,body.d-circle .cf-field textarea{border-radius:14px;background:#fff}
body.d-circle .btn-onbiz{background:var(--cc-plum);border-radius:999px}
body.d-circle .hours-row{border-radius:14px}
.cc-map{margin-top:3rem}
.cc-share{max-width:var(--max-w);margin:4rem auto 0;padding:0 3rem}
body.d-circle .bx-foot{background:var(--cc-plum);color:#f6dbe6;margin-top:6rem}
body.d-circle .bx-foot p,body.d-circle .bx-foot li,body.d-circle .bx-foot a{color:#e5bfd0}
body.d-circle .bx-foot-col h2{color:var(--cc-gold);font-family:'Playfair Display',serif;font-style:italic;text-transform:none;letter-spacing:0}
body.d-circle .bx-foot .bx-brand-txt b{color:#fff}
body.d-circle .bx-foot-bottom{border-top-color:rgba(255,255,255,.12)}

@media (max-width:980px){
  .cc-hero-in,.cc-about,.cc-contact{grid-template-columns:1fr}
  .cc-rings{max-width:440px}
  .cc-contact{padding:3rem}
}
@media (max-width:640px){
  .cc-hero{padding:calc(var(--nav-h) + 3rem) 1.6rem 6rem}
  .cc-sec{padding:7rem 1.6rem 0}
  .cc-c{width:100%;max-width:280px}
  .cc-c:nth-child(even){margin-top:0}
  .cc-quote{padding:6rem 1.6rem;margin-top:7rem}
  .cc-note{padding:3rem 2.2rem;border-radius:24px}
  .cc-gal{grid-template-columns:1fr 1fr}
  .cc-contact{padding:2rem;border-radius:24px}
  .cc-share{padding:0 1.6rem}
}
@media (prefers-reduced-motion:reduce){.cc-t-e{animation:none}}
