/* ============================================================
   COMPOUND — private wealth, patiently
   Scoped to body.d-compound. 1rem = 10px.
   ============================================================ */
body.d-compound{
  --wl-ivory:#faf8f3;--wl-tint:#f2eee6;--wl-ink:#1b1733;--wl-indigo:#2e2566;--wl-soft:#4a4760;--wl-mute:#6a667e;--wl-line:#e3ddd1;--wl-a:var(--biz);--wl-gold:#b8923a;
  --bg-primary:var(--wl-ivory);--bg-secondary:var(--wl-tint);--bg-card:#fff;--bg-inset:#f4f1ea;
  --fg-primary:var(--wl-ink);--fg-soft:var(--wl-soft);--fg-muted:var(--wl-mute);--border-color:var(--wl-line);--border-strong:#cfc6b5;
  background:var(--wl-ivory);color:var(--wl-ink);font-family:'DM Sans',system-ui,sans-serif
}
body.d-compound h1,body.d-compound h2,body.d-compound h3{font-family:'DM Serif Display',Georgia,serif;font-weight:400;letter-spacing:-.01em;line-height:1.04}
body.d-compound em{font-style:italic;color:var(--wl-a)}
.wl-kick{font-size:1.2rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--wl-gold);margin-bottom:1.6rem}

body.d-compound .bx-nav{background:rgba(250,248,243,.85)}
body.d-compound .bx-brand-mark{border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--wl-line)}
body.d-compound .bx-brand-txt b{font-family:'DM Serif Display',serif;font-weight:400;font-size:1.9rem}
body.d-compound .bx-nav-links a{font-weight:500;font-size:1.3rem;color:var(--wl-soft)}
body.d-compound .bx-nav-links a::after{background:var(--wl-gold);height:1.5px}
body.d-compound .bx-nav-links a.active{color:var(--wl-indigo)}
body.d-compound .bx-nav-cta{background:var(--wl-indigo);border-radius:999px}

/* hero */
.wl-hero{padding:calc(var(--nav-h) + 6rem) 3rem 9rem;background:radial-gradient(800px 500px at 100% 0%,rgba(var(--biz-rgb),.1),transparent 60%),linear-gradient(180deg,#fff,var(--wl-ivory))}
.wl-hero-in{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:6rem;align-items:center}
.wl-logo{height:54px;width:auto;margin-bottom:3rem}
.wl-hero h1{font-size:clamp(5rem,7vw,8.6rem);color:var(--wl-indigo)}
.wl-tag{font-size:1.9rem;color:var(--wl-soft);margin-top:2rem;font-weight:500}
.wl-lede{font-size:1.65rem;line-height:1.7;color:var(--wl-mute);margin-top:1.4rem;max-width:52ch}
.wl-actions{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:3.4rem}
.wl-btn{display:inline-flex;align-items:center;gap:1rem;padding:1.6rem 2.8rem;border-radius:999px;font-size:1.45rem;font-weight:600;transition:transform .25s var(--ease),background .25s,box-shadow .25s}
.wl-btn-main{background:var(--wl-indigo);color:#fff;box-shadow:0 14px 34px rgba(46,37,102,.28)}
.wl-btn-main:hover{transform:translateY(-2px);background:var(--wl-a)}
.wl-btn-line{border:1px solid var(--wl-line);color:var(--wl-ink);background:#fff}
.wl-btn-line:hover{border-color:var(--wl-indigo)}

.wl-calc{background:var(--wl-indigo);color:#fff;border-radius:28px;padding:3rem;box-shadow:0 40px 90px rgba(27,23,51,.28);position:relative;overflow:hidden}
.wl-calc::before{content:'';position:absolute;right:-120px;top:-120px;width:300px;height:300px;border-radius:50%;background:radial-gradient(closest-side,rgba(var(--biz-rgb),.55),transparent)}
.wl-calc-head{position:relative;display:flex;justify-content:space-between;align-items:center;font-size:1.2rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#d8cfa8}
.wl-result{position:relative;margin:1.8rem 0 2rem}
.wl-result small{font-size:1.3rem;color:rgba(255,255,255,.65)}
.wl-result b{display:block;font-family:'DM Serif Display',serif;font-weight:400;font-size:clamp(4.4rem,5vw,5.6rem);line-height:1.05;font-variant-numeric:tabular-nums}
.wl-split{display:flex;flex-wrap:wrap;gap:.6rem 2.4rem;font-size:1.3rem;color:rgba(255,255,255,.7);margin-top:.6rem}
body.d-compound .wl-split em{color:#fff;font-style:normal;font-weight:600;margin-left:.4rem}
.wl-split i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:.6rem;vertical-align:0}
.wl-k1{background:rgba(255,255,255,.35)}.wl-k2{background:#e9c46a}
.wl-bars{position:relative;display:flex;align-items:flex-end;gap:.8rem;height:130px;margin-bottom:2.6rem;border-bottom:1px solid rgba(255,255,255,.15)}
.wl-bars span{flex:1;height:var(--v);background:linear-gradient(180deg,#e9c46a,#c9a13d);border-radius:5px 5px 0 0;position:relative;transition:height .45s var(--ease)}
.wl-bars span::before{content:'';position:absolute;left:0;right:0;bottom:0;height:calc(var(--r,1) * 100%);background:rgba(255,255,255,.3);border-radius:0;transition:height .45s var(--ease)}
.wl-bars span::after{content:attr(data-y);position:absolute;left:50%;bottom:-2rem;transform:translateX(-50%);font-size:.95rem;color:rgba(255,255,255,.5)}
.wl-range{display:block;margin-top:1.8rem;position:relative}
.wl-range>span{display:flex;justify-content:space-between;font-size:1.3rem;color:rgba(255,255,255,.75);margin-bottom:1rem}
.wl-range b{color:#fff;font-size:1.45rem;font-variant-numeric:tabular-nums}
.wl-range input{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:99px;background:linear-gradient(90deg,#e9c46a var(--fill,50%),rgba(255,255,255,.18) var(--fill,50%));outline:none;cursor:pointer}
.wl-range input::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:5px solid #e9c46a;box-shadow:0 4px 10px rgba(0,0,0,.3)}
.wl-range input::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;border:5px solid #e9c46a}
.wl-range input:focus-visible{box-shadow:0 0 0 4px rgba(233,196,106,.35)}
.wl-note{position:relative;font-size:1.1rem;color:rgba(255,255,255,.55);margin-top:2rem;line-height:1.5}

/* sections */
.wl-sec{padding:10rem 3rem 0}
.wl-sec>*{max-width:var(--max-w);margin-left:auto;margin-right:auto}
.wl-head{text-align:center;margin-bottom:5rem}
.wl-sec h2{font-size:clamp(3.8rem,5.2vw,6.2rem);color:var(--wl-indigo)}
.wl-tint{background:var(--wl-tint);padding-bottom:10rem;margin-top:10rem}

.wl-about{display:grid;grid-template-columns:.9fr 1.1fr;gap:7rem;align-items:center}
.wl-about-art{position:relative}
.wl-about-art img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:200px 200px 24px 24px}
.wl-about-badge{position:absolute;right:-3rem;bottom:4rem;background:#fff;border-radius:20px;padding:2rem 2.4rem;box-shadow:0 24px 50px rgba(27,23,51,.14);max-width:240px}
.wl-about-badge b{display:block;font-family:'DM Serif Display',serif;font-weight:400;font-size:2.4rem;color:var(--wl-indigo);line-height:1.1}
.wl-about-badge span{font-size:1.3rem;color:var(--wl-mute)}
.wl-about-copy h2{margin-bottom:2.8rem}
.wl-about-copy p:not(.wl-kick){font-size:1.7rem;line-height:1.8;color:var(--wl-soft)}
.wl-about-copy p+p{margin-top:1.4rem}

.wl-svc{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.wl-svc-card{position:relative;background:#fff;border-radius:24px;padding:3.4rem 3rem 3rem;border:1px solid var(--wl-line);display:flex;flex-direction:column;transition:transform .35s var(--ease),box-shadow .35s}
.wl-svc-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px rgba(27,23,51,.1)}
.wl-svc-n{position:absolute;right:2.6rem;top:2.6rem;font-family:'DM Serif Display',serif;font-size:2rem;color:var(--wl-line)}
.wl-svc-card>i{width:56px;height:56px;border-radius:50%;background:var(--wl-indigo);color:#e9c46a;display:flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:2.6rem}
.wl-svc-card h3{font-size:2.6rem;color:var(--wl-indigo)}
.wl-svc-card p{font-size:1.45rem;color:var(--wl-soft);line-height:1.6;margin-top:.8rem;flex:1}
.wl-svc-card a{margin-top:2rem;font-weight:600;font-size:1.35rem;color:var(--wl-a);display:inline-flex;gap:.6rem;align-items:center}

.wl-hl{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--wl-indigo);border-bottom:1px solid var(--wl-line)}
.wl-hl-item{padding:3.4rem 2.4rem;border-left:1px solid var(--wl-line)}
.wl-hl-item:first-child{border-left:0;padding-left:0}
.wl-hl-item i{color:var(--wl-gold);font-size:2rem;margin-bottom:1.6rem;display:block}
.wl-hl-item h3{font-size:2.4rem;color:var(--wl-indigo)}
.wl-hl-item p{font-size:1.35rem;color:var(--wl-mute);margin-top:.6rem}

.wl-quote{max-width:1000px!important;text-align:center}
.wl-quote blockquote{font-family:'DM Serif Display',serif;font-size:clamp(2.6rem,3.2vw,3.8rem);line-height:1.3;color:var(--wl-indigo)}
.wl-quote blockquote::before{content:'“';display:block;font-size:2.4em;line-height:.6;color:var(--wl-gold)}
.wl-quote figcaption{margin-top:2.4rem;font-size:1.3rem;letter-spacing:.14em;text-transform:uppercase;color:var(--wl-mute)}
.wl-rev{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.6rem;margin-top:4rem!important}
.wl-rev figure{background:#fff;border-radius:20px;padding:2.6rem;border:1px solid var(--wl-line)}
.wl-gal{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.wl-gal-item{border-radius:20px;overflow:hidden;padding:0;aspect-ratio:4/3;cursor:zoom-in}
.wl-gal-item img{width:100%;height:100%;object-fit:cover}
body.d-compound .hours-card{max-width:none}

.wl-contact{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;padding:5rem;border-radius:32px;background:#fff;border:1px solid var(--wl-line)}
.wl-contact-lede{font-size:1.6rem;color:var(--wl-soft);line-height:1.65;margin:2rem 0 3rem}
.wl-social{display:flex;gap:1rem;margin-top:2rem}
body.d-compound .ci{border-radius:16px}
body.d-compound .ci-ico{background:rgba(var(--biz-rgb),.1);color:var(--wl-indigo)}
body.d-compound .contact-form{border-radius:24px;background:var(--wl-ivory)}
body.d-compound .contact-form h3{font-family:'DM Serif Display',serif;font-weight:400;font-size:2.8rem;color:var(--wl-indigo);margin-bottom:2rem}
body.d-compound .cf-field input,body.d-compound .cf-field textarea{border-radius:12px;background:#fff}
body.d-compound .btn-onbiz{background:var(--wl-indigo);border-radius:999px;text-transform:none;letter-spacing:0;font-size:1.5rem}
.wl-map{margin-top:3rem}
body.d-compound .biz-map{border-radius:24px}
.wl-share{max-width:var(--max-w);margin:4rem auto 0;padding:0 3rem}
body.d-compound .bx-foot{background:var(--wl-indigo);color:#e7e3f5;border-top:0;margin-top:6rem}
body.d-compound .bx-foot p,body.d-compound .bx-foot li,body.d-compound .bx-foot a{color:rgba(231,227,245,.75)}
body.d-compound .bx-foot-col h2{color:#e9c46a}
body.d-compound .bx-foot .bx-brand-txt b{color:#fff}
body.d-compound .bx-foot .btn-onbiz{background:#e9c46a;color:var(--wl-ink)}
body.d-compound .bx-foot .btn-outline{border-color:rgba(255,255,255,.3);color:#fff}
body.d-compound .bx-foot-bottom{border-top-color:rgba(255,255,255,.12)}

@media (max-width:980px){
  .wl-hero-in,.wl-about,.wl-contact{grid-template-columns:1fr}
  .wl-svc{grid-template-columns:1fr 1fr}
  .wl-hl{grid-template-columns:1fr 1fr}
  .wl-hl-item:nth-child(3){border-left:0;padding-left:0}
  .wl-about-art{max-width:460px}
  .wl-about-badge{right:-1rem}
  .wl-contact{padding:3rem}
}
@media (max-width:640px){
  .wl-hero{padding:calc(var(--nav-h) + 3rem) 1.6rem 6rem}
  .wl-sec{padding:7rem 1.6rem 0}
  .wl-tint{padding-bottom:7rem;margin-top:7rem}
  .wl-calc{padding:2.2rem}
  .wl-svc,.wl-hl,.wl-gal{grid-template-columns:1fr}
  .wl-hl-item{border-left:0;padding-left:0;border-top:1px solid var(--wl-line)}
  .wl-contact{padding:2rem}
  .wl-share{padding:0 1.6rem}
}
