/* LingYu design system. Edit here and every page changes. */
.ly{--font-head:"Fraunces",Georgia,serif;--font-body:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;--head-w:500;--cream:#FBF7EF;--sand:#F1EADB;--sage:#8FA08A;--sage-d:#4E6350;--sage-l:#DCE4D6;--clay:#B5654B;--clay-d:#98503A;--ink:#2B332C;--muted:#5F695F;
  font-family:var(--font-body);color:var(--ink);background:var(--cream);line-height:1.65;font-size:17px;overflow-x:clip;position:relative;}
.ly *{box-sizing:border-box}
.ly h1,.ly h2,.ly h3{font-family:var(--font-head);font-weight:var(--head-w);line-height:1.15;margin:0;color:var(--sage-d);letter-spacing:-.01em}
.ly h1{font-size:clamp(2.4rem,5.4vw,4rem);max-width:15ch}
.ly h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}
.ly h3{font-size:1.35rem}
.ly p{margin:0 0 1em;max-width:62ch}
.ly a{color:inherit}
.ly a:focus-visible,.ly .btn:focus-visible{outline:3px solid var(--clay);outline-offset:3px;border-radius:999px}
.ly .wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.ly section{padding:96px 0;position:relative}
.ly .blob{position:absolute;z-index:0;pointer-events:none}
.ly .wrap{position:relative;z-index:1}

.ly .btn{display:inline-block;padding:15px 30px;border-radius:999px;background:var(--clay);color:#fff;text-decoration:none;font-weight:600;transition:background .2s}
.ly .btn:hover{background:var(--clay-d);color:#fff}
.ly .btn.ghost{background:transparent;color:var(--sage-d);border:1.5px solid var(--sage-d)}
.ly .btn.ghost:hover{background:var(--sage-d);color:#fff}
.ly .row{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}

/* nav */
.ly nav.top{background:var(--sage-d);border-radius:0 0 28px 28px;position:sticky;top:0;z-index:50;box-shadow:0 10px 24px -18px rgba(0,0,0,.5)}
body.admin-bar .ly nav.top{top:32px}
.ly section[id]{scroll-margin-top:96px}
.ly nav.top .in{max-width:1280px;margin:0 auto;padding:18px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.ly .logo{font-family:var(--font-head);font-size:1.7rem;color:var(--cream);text-decoration:none;line-height:1}
.ly .logo small{display:block;font-family:var(--font-body);font-size:.68rem;opacity:.85;margin-top:5px}
.ly nav.top ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px}
.ly nav.top li{position:relative}
.ly nav.top a.l{display:block;color:var(--cream);text-decoration:none;font-weight:600;font-size:.95rem;padding:10px 14px}
.ly nav.top a.l:hover{text-decoration:underline;text-underline-offset:5px}
.ly nav.top .sub{display:none;position:absolute;top:100%;left:0;min-width:240px;background:var(--cream);border-radius:16px;padding:8px;box-shadow:0 18px 40px -18px rgba(0,0,0,.45);flex-direction:column;gap:0}
.ly nav.top li:hover .sub,.ly nav.top li:focus-within .sub{display:flex}
.ly nav.top .sub a{color:var(--sage-d);padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:500;display:block}
.ly nav.top .sub a:hover{background:var(--sage-l)}
.ly nav.top .btn{padding:12px 24px;margin-left:8px;font-size:.95rem}
.ly .burger{display:none}
.ly #lyn{position:absolute;opacity:0;pointer-events:none}
.ly #lyn:focus-visible + .burger{outline:3px solid var(--cream);outline-offset:3px}
@media (max-width:900px){
 .ly .burger{display:block;color:var(--cream);font-weight:600;cursor:pointer;padding:8px 18px;border:1.5px solid var(--cream);border-radius:999px}
 .ly nav.top{max-height:100vh;overflow-y:auto}
 .ly nav.top .in{flex-wrap:wrap;padding:16px 20px}
 .ly nav.top ul.menu{display:none;width:100%;flex-direction:column;align-items:stretch;padding-bottom:10px}
 .ly #lyn:checked ~ ul.menu{display:flex}
 .ly nav.top .sub{display:flex;position:static;background:transparent;box-shadow:none;padding:0 0 0 14px;min-width:0}
 .ly nav.top .sub a{color:var(--cream)}
 .ly nav.top .sub a:hover{background:rgba(255,255,255,.12)}
 .ly nav.top .btn{margin:8px 14px 0;text-align:center}
}

/* hero */
.ly .hero{padding:80px 0 110px;background:var(--cream)}
.ly .hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.ly .hero p.lead{font-size:1.15rem;color:var(--muted);margin-top:24px}
.ly .hero .photo{aspect-ratio:4/5;border-radius:48% 52% 44% 56% / 38% 42% 58% 62%;background:var(--sage-l) url("https://www.lingyu.ca/wp-content/uploads/eb2e4b605588361052ade6c90b074831-1024x768.jpg") center/cover;box-shadow:0 30px 60px -30px rgba(78,99,80,.45)}
.ly .hero .facts{display:flex;gap:28px;flex-wrap:wrap;margin-top:36px;color:var(--muted);font-size:.95rem}
.ly .hero .facts b{display:block;color:var(--sage-d);font-weight:600}

/* services */
.ly .services{background:var(--sand)}
.ly .head{max-width:640px;margin-bottom:48px}
.ly .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.ly .card{background:var(--cream);border-radius:28px;padding:32px 26px;display:flex;flex-direction:column}
.ly .card:nth-child(1){border-radius:28px 28px 90px 28px}
.ly .card:nth-child(2){border-radius:28px 90px 28px 28px}
.ly .card:nth-child(3){border-radius:28px 28px 28px 90px}
.ly .card:nth-child(4){border-radius:90px 28px 28px 28px}
.ly .card p{color:var(--muted);font-size:.97rem;flex:1}
.ly .card a{color:var(--clay-d);font-weight:600;text-decoration:underline;text-underline-offset:4px}

/* care */
.ly .care .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.ly .care .photo{aspect-ratio:1/1;border-radius:36% 64% 58% 42% / 46% 40% 60% 54%;background:var(--sage-l) url("https://www.lingyu.ca/wp-content/uploads/fa49e968172537635ed1c64360351a75-1024x768.jpg") center/cover}
.ly .pills{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.ly .pills li{background:var(--sage-l);color:var(--sage-d);padding:9px 18px;border-radius:999px;font-weight:500;font-size:.95rem}

/* team */
.ly .team{background:var(--sage-d);color:var(--cream)}
.ly .team h2{color:var(--cream)}
.ly .team .head p{color:#D6DFD2}
.ly .grid6{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
.ly .person{text-decoration:none;display:block}
.ly .person .pic{aspect-ratio:4/5;border-radius:999px 999px 24px 24px;background:#3F5141 center/cover;margin-bottom:14px}
.ly .person b{display:block;font-family:var(--font-head);font-weight:400;font-size:1.08rem}
.ly .person span{font-size:.88rem;color:#CFD9CB;line-height:1.35;display:block}
.ly .person:hover b{text-decoration:underline;text-underline-offset:4px}
.ly .team .row .btn.ghost{color:var(--cream);border-color:var(--cream)}
.ly .team .row .btn.ghost:hover{background:var(--cream);color:var(--sage-d)}

/* cta + contact */
.ly .cta{text-align:center}
.ly .cta .wrap{background:var(--sage-l);border-radius:56px;padding:72px 24px}
.ly .cta p{margin-left:auto;margin-right:auto;color:var(--muted)}
.ly .cta .row{justify-content:center}
.ly .contact .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.ly .contact h3{margin-bottom:10px;font-size:1.2rem}
.ly .contact p{color:var(--muted);margin:0}
.ly .contact a{text-decoration:underline;text-underline-offset:3px}

@media (max-width:980px){
 .ly .grid4{grid-template-columns:1fr 1fr}
 .ly .grid6{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:760px){
 .ly section{padding:64px 0}
 .ly .hero .wrap,.ly .care .wrap,.ly .contact .wrap{grid-template-columns:1fr}
 .ly .hero .photo{order:-1;max-width:420px}
 .ly .grid4{grid-template-columns:1fr}
 .ly .grid6{grid-template-columns:1fr 1fr}
 .ly .cta .wrap{border-radius:36px}
}
@media (prefers-reduced-motion:reduce){.ly *{transition:none!important}}

/* footer */
.ly .contact{padding:64px 0 32px}
.ly .legal{padding-bottom:40px;text-align:center;color:var(--muted);font-size:.9rem}
.ly .legal p{max-width:none;margin:0}

/* inner pages (templates/page.php) */
.ly .pg-head{background:var(--sand);padding:80px 24px 56px;text-align:center;border-radius:0 0 56px 56px}
.ly .pg-head h1{max-width:none;margin:0 auto;font-size:clamp(2rem,4.4vw,3.2rem)}
.ly .pg-body{max-width:820px;margin:0 auto;padding:64px 24px 96px}
.ly .pg-body h2{margin:1.6em 0 .6em}
.ly .pg-body h3{margin:1.4em 0 .5em}
.ly .pg-body ul,.ly .pg-body ol{padding-left:1.3em;max-width:62ch}
.ly .pg-body li{margin-bottom:.4em}
.ly .pg-body a{color:var(--clay-d);text-underline-offset:3px}
.ly .pg-body img{max-width:100%;height:auto;border-radius:28px}
.ly .pg-body blockquote{margin:1.6em 0;padding:20px 28px;background:var(--sage-l);border-radius:24px;color:var(--sage-d)}
.ly .pg-body blockquote p{margin:0}
.ly .pg-body details{background:var(--sand);border-radius:20px;padding:16px 22px;margin-bottom:12px}
.ly .pg-body summary{cursor:pointer;font-weight:600;color:var(--sage-d)}
.ly .pg-body table{border-collapse:collapse;width:100%}
.ly .pg-body th,.ly .pg-body td{padding:12px 14px;border-bottom:1px solid var(--sage-l);text-align:left}
.ly .wp-block-button__link{background:var(--clay);color:#fff;border-radius:999px;padding:15px 30px;font-weight:600;text-decoration:none}
.ly .wp-block-button__link:hover{background:var(--clay-d);color:#fff}
.ly .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--sage-d);border:1.5px solid var(--sage-d)}
.ly .wp-block-columns{gap:32px}
.ly .ly-bleed{width:100vw;margin-left:calc(50% - 50vw)}
.ly .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media (max-width:980px){.ly .grid3{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.ly .grid3{grid-template-columns:1fr}}


/* footer (dark, rounded top) */
.ly .ly-foot{background:var(--sage-d);color:var(--cream);border-radius:48px 48px 0 0;margin-top:-48px;position:relative;z-index:2}
.ly .ly-foot h3{color:var(--cream)}
.ly .ly-foot p,.ly .ly-foot .legal{color:#D6DFD2}
.ly .ly-foot a{color:var(--cream)}

/* team + therapist pages */
.ly .pg-head{background:transparent;border-radius:0;padding:72px 24px 24px}
.ly .pg-head .role{margin:12px auto 0;color:var(--muted);max-width:none}
.ly .has-text-align-center{text-align:center;margin-left:auto;margin-right:auto}
.ly .badge{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;padding:6px 14px;border-radius:999px;background:#ECEBE4;color:var(--muted);white-space:nowrap}
.ly .badge svg{flex:none}
.ly .badge.accepting{background:#F6E3B4;color:#6B4E0E}
.ly .badge.waitlist{background:#E3E0F3;color:#463C7A}

.ly .tfilters{border-top:1px solid #E1E1D8;border-bottom:1px solid #E1E1D8;padding:24px 0;margin:0 0 40px}
.ly .tf-bar{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-end}
.ly .tf-group{display:flex;flex-direction:column;gap:8px}
.ly .tf-label{font-weight:600;font-size:.85rem;color:var(--sage-d)}
.ly .tf-chips{display:flex;flex-wrap:wrap;gap:10px}
.ly .chip{border:1.5px solid #CBD2C6;background:#fff;color:var(--sage-d);border-radius:12px;padding:11px 18px;font:inherit;font-size:.92rem;cursor:pointer}
.ly .chip[aria-pressed="true"]{background:var(--sage-d);border-color:var(--sage-d);color:#fff}
.ly .tf-toggle{margin-left:auto;display:inline-flex;align-items:center;background:var(--sage-d);color:#fff;border:0;border-radius:999px;padding:13px 24px;font:inherit;font-weight:600;cursor:pointer}
.ly .tf-toggle::after{content:"";width:8px;height:8px;margin-left:12px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg);position:relative;top:-2px}
.ly .tf-toggle[aria-expanded="true"]::after{transform:rotate(225deg);top:2px}
.ly .tf-more{display:none;margin-top:22px;padding-top:22px;border-top:1px solid #E1E1D8}
.ly .tf-more.open{display:block}
.ly .tf-more .tf-group{margin-bottom:18px}
.ly .tf-reset{background:none;border:0;color:var(--clay-d);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.ly .tempty{display:none;text-align:center;padding:40px 0}
.ly .tempty p{margin:0 auto 8px}

.ly .tlist{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ly .tcard{display:flex;flex-direction:column;background:#fff;border:1px solid #E3E3DA;border-radius:20px;padding:26px}
.ly .tcard[hidden]{display:none}
.ly .tc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}
.ly .av{display:block;width:76px;height:76px;border-radius:50%;background:var(--sage-l) center/cover;flex:none}
.ly .tcard h3{font-size:1.5rem;margin:0 0 6px}
.ly .tcard h3 a{text-decoration:none;color:inherit}
.ly .pron{color:#8A94A0;font-size:.85em}
.ly .tcard .meta{margin:0 0 16px;font-size:.92rem;max-width:none}
.ly .tcard .blurb{margin:0 0 22px;padding-left:16px;border-left:2px solid var(--sage-l);font-size:.95rem;max-width:none;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.ly .more{display:flex;justify-content:space-between;align-items:center;border:1.5px solid #D5DAD1;border-radius:999px;padding:14px 24px;color:var(--sage-d);font-weight:600;text-decoration:none;margin-top:auto}
.ly .more:hover{background:var(--sage-l)}
.ly .more i{font-style:normal;font-size:1.3rem}

.ly .tp{max-width:1040px;margin:0 auto;padding:56px 24px 72px}
.ly .tp-head{display:grid;grid-template-columns:300px 1fr;gap:40px;align-items:start}
.ly .tp-photo{aspect-ratio:9/10;border-radius:20px;background:var(--sage-l) center/cover}
.ly .tp-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.ly .tp-title h1{max-width:none;font-size:clamp(2rem,4vw,2.9rem)}
.ly .tp-info .role{margin:6px 0 24px;max-width:none}
.ly .tp-panel{background:var(--sand);border-radius:20px;padding:26px 28px}
.ly .tp-panel p{margin:0 0 .6em;max-width:none}
.ly .tp-panel p:last-child{margin-bottom:0}
.ly .fmt-pill{display:inline-block;background:#fff;border-radius:999px;padding:8px 18px;font-size:.9rem;font-weight:500;margin-bottom:16px}
.ly .tp-cols{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;margin-top:64px;align-items:start}
.ly .tp-cols h2{font-size:1.6rem;margin-bottom:.6em}
.ly .tp-cols .sub{color:var(--muted);margin-bottom:18px}
.ly .tp-bio{margin-bottom:28px}
.ly .tp-bio h2{margin-top:1.4em;font-size:1.3rem}
.ly .btn-wide{display:flex;justify-content:space-between;align-items:center;width:100%;padding:18px 28px;margin-bottom:36px}
.ly .btn-wide i{font-style:normal;font-size:1.3rem}
.ly .tp-acc{background:var(--sand);border-radius:20px;padding:6px 28px}
.ly .tp-acc details{border-bottom:1px solid #DDD8CB}
.ly .tp-acc details:last-child{border-bottom:0}
.ly .tp-acc summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:18px 0;font-weight:500;color:var(--sage-d)}
.ly .tp-acc summary::-webkit-details-marker{display:none}
.ly .tp-acc summary::after{content:"+";font-size:1.5rem;line-height:1}
.ly .tp-acc details[open] summary::after{content:"\2212"}
.ly .tp-acc .in{padding-bottom:14px;color:var(--muted)}
.ly .tp-acc .in p{margin:0 0 .6em}
.ly .tp-acc .in ul{padding-left:1.2em;margin:0 0 .6em}
.ly .tp-right hr{border:0;border-top:1px solid #E1E1D8;margin:40px 0}
.ly .th-chips{display:flex;flex-wrap:wrap;gap:10px}
.ly .tag{display:inline-block;background:#fff;border:1px solid #CBD2C6;color:var(--sage-d);border-radius:8px;padding:10px 16px;font-size:.92rem;text-decoration:none}
.ly a.tag:hover{background:var(--sage-l)}
.ly .tp-team{background:var(--sage-l);text-align:center;padding:72px 24px}
.ly .tp-avs{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin-bottom:24px}
.ly .tp-avs .av{width:64px;height:64px}
.ly .tp-team p{margin:12px auto 28px}
.ly .tp-team .more{display:inline-flex;background:#fff;gap:28px;padding:16px 32px}
@media (max-width:900px){
 .ly .tlist{grid-template-columns:1fr}
 .ly .tp-head{grid-template-columns:1fr}
 .ly .tp-photo{max-width:320px}
 .ly .tp-cols{grid-template-columns:1fr;gap:40px}
 .ly .tf-toggle{margin-left:0}
}
@media (max-width:480px){.ly .tcard{padding:20px}}

/* service pages */
.ly .sv-hero{display:grid;grid-template-columns:1fr 1fr;min-height:600px;background:var(--cream)}
.ly .sv-art{background:var(--sand) var(--room) 30% center/cover no-repeat;border-radius:0 240px 0 0;min-height:420px}
.ly .sv-info{padding:56px 48px 64px;max-width:600px}
.ly .sv-pill{display:inline-block;background:#F1EFE8;border-radius:999px;padding:8px 18px;font-size:.85rem;margin-bottom:22px}
.ly .sv-info h1{display:flex;align-items:center;gap:16px;font-size:clamp(2rem,3.4vw,2.8rem);max-width:none;margin-bottom:20px}
.ly .sv-ic{width:40px;height:50px;flex:none}
.ly .sv-intro{font-size:1.05rem;margin-bottom:26px;max-width:none}
.ly .sv-info .more{margin:0 0 30px}
.ly .sv-rule{border:0;border-top:2px solid #F0D9CC;margin:0 0 24px}
.ly .sv-note{font-size:.95rem;margin:0 0 10px;max-width:none}
.ly .sv-prov{display:flex;flex-wrap:wrap;gap:16px 14px;margin-top:14px}
.ly .sv-prov a{display:block;width:72px;text-align:center;text-decoration:none;font-size:.78rem;color:var(--ink)}
.ly .sv-prov .av{width:56px;height:56px;margin:0 auto 6px}
.ly .sv-band{background:#EAEAE3;padding:72px 0}
.ly .sv-band .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.ly .sv-band h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:20px}
.ly .sv-sub{margin:0 0 14px;font-size:.95rem}
.ly .sv-sub a{color:var(--clay-d)}
.ly .sv-tiles{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ly .sv-tile{border-radius:18px;aspect-ratio:1/1;background-color:var(--sage-l);background-repeat:no-repeat}
.ly .sv-tile.wide{grid-column:1/-1;aspect-ratio:2/1}
.ly .sv-t1{background-image:var(--room);background-position:11% 0%;background-size:300% auto}
.ly .sv-t2{background-image:var(--room);background-position:96% 6%;background-size:240% auto}
.ly .sv-t3{background-image:var(--room);background-position:0% 91%;background-size:150% auto}
.ly .sv-faq{padding:80px 0 96px}
.ly .sv-faq .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.ly .sv-fart{position:relative;aspect-ratio:4/5;border-radius:220px 220px 24px 24px;background:var(--sand) var(--room) 52% 55%/300% auto no-repeat;margin-bottom:40px;position:sticky;top:120px}
.ly .sv-more{position:absolute;left:20px;right:20px;bottom:-36px;background:#fff;border-radius:18px;padding:22px 24px;box-shadow:0 18px 40px -24px rgba(0,0,0,.35)}
.ly .sv-more h3{font-size:1.3rem;margin-bottom:8px}
.ly .sv-more p{margin:0;font-size:.92rem}
.ly .sv-more a{color:var(--clay-d)}
.ly .sv-faq h2{font-size:clamp(1.7rem,2.8vw,2.3rem);margin-bottom:24px}
.ly .sv-acc details{border-bottom:1px solid #D8DCD2}
.ly .sv-acc summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-weight:500;color:var(--sage-d)}
.ly .sv-acc summary::-webkit-details-marker{display:none}
.ly .sv-acc summary::after{content:"+";font-size:1.5rem;line-height:1;flex:none}
.ly .sv-acc details[open] summary::after{content:"\2212"}
.ly .sv-acc .in{padding-bottom:14px;color:var(--muted)}
.ly .sv-acc .in p{margin:0 0 .6em;max-width:none}
.ly .sv-acc .in ul{padding-left:1.2em;margin:0 0 .6em}
.ly .sv-dark{background:var(--sage-l);color:var(--ink);padding:72px 0 96px}
.ly .sv-dark .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.ly .sv-dark h2{color:var(--sage-d);font-size:clamp(1.6rem,2.6vw,2.2rem)}
.ly .sv-kicker{font-size:.85rem;margin:0 0 12px;color:var(--muted)}
.ly .sv-links{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ly .sv-links a{display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:16px;color:var(--sage-d);font-weight:600;text-decoration:none}
.ly .sv-links .ic{width:28px;height:34px;flex:none}
.ly .sv-links span{flex:1;line-height:1.25}
.ly .sv-links i{font-style:normal;font-size:1.3rem}
@media (max-width:900px){
 .ly .sv-hero{grid-template-columns:1fr}
 .ly .sv-art{border-radius:0 0 120px 0;min-height:300px}
 .ly .sv-info{padding:40px 24px 48px}
 .ly .sv-band .wrap,.ly .sv-faq .wrap,.ly .sv-dark .wrap{grid-template-columns:1fr}
 .ly .sv-fart{max-width:380px;position:relative;top:auto}
}
@media (max-width:480px){.ly .sv-links{grid-template-columns:1fr}}

.ly .ct{list-style:none;padding:0;margin:0;color:#D6DFD2}
.ly .ct li{display:flex;align-items:center;gap:10px;margin:0 0 8px}
.ly .ct svg{flex:none;opacity:.9}
.ly .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* service info block + footer note */
.ly .sv-facts{display:flex;gap:14px;margin:0 0 20px}
.ly .sv-facts div{flex:1;background:var(--sand);border-radius:16px;padding:16px 18px}
.ly .sv-facts b{display:block;font-family:var(--font-head);font-weight:var(--head-w);font-size:1.5rem;color:var(--sage-d);line-height:1.2}
.ly .sv-facts span{font-size:.82rem;color:var(--muted)}
.ly .sv-line{font-size:.95rem;margin:0 0 10px;max-width:none}
.ly .sv-line a{color:var(--clay-d);font-weight:600;text-decoration:none;white-space:nowrap}
.ly .sv-line a:hover{text-decoration:underline}
.ly .sv-fine{font-size:.82rem;color:var(--muted);margin:0 0 22px;max-width:none}
.ly .ct-note{margin:10px 0 0;font-size:.8rem;opacity:.85;max-width:none}
.ly .sv-acc details.closing summary::after,.ly .tp-acc details.closing summary::after{content:"+"}

/* after-hours caption under the AI assistant number */
.ly .ct small{display:block;font-size:.8rem;opacity:.85;line-height:1.3;margin-top:2px}

.ly .sv-over{font-size:.85rem;color:var(--muted);margin:-6px 0 18px;max-width:none}

/* Luma events calendar */
.ly .sv-events{padding:56px 0 24px}
.ly .ly-ev h2{font-size:clamp(1.6rem,2.8vw,2.2rem);margin-bottom:10px}
.ly .ly-ev-note{color:var(--muted);margin:0 0 20px;max-width:none}
.ly .ly-ev-frame{display:block;width:100%;height:560px;border:1px solid #D5DAD1;border-radius:16px;background:#fff}
@media (max-width:600px){.ly .ly-ev-frame{height:620px}}

/* FAQ page */
.ly .faq-top{background:var(--sage-l);padding:72px 0 56px;border-radius:0 0 48px 48px}
.ly .faq-top h1{font-size:clamp(2.2rem,4.5vw,3.4rem);margin:0 0 12px;color:var(--sage-d)}
.ly .faq-intro{max-width:640px;margin:0;font-size:1.08rem;color:var(--muted)}
.ly .faq-body{padding:64px 0 96px}
.ly .faq-wrap{display:grid;grid-template-columns:240px 1fr;gap:56px;align-items:start}
.ly .faq-wrap:not(:has(.faq-nav)){grid-template-columns:minmax(0,820px)}
.ly .faq-nav{position:sticky;top:120px;display:flex;flex-direction:column;gap:6px}
.ly .faq-nav a{padding:10px 16px;border-radius:999px;color:var(--sage-d);text-decoration:none;font-weight:500;background:transparent}
.ly .faq-nav a:hover{background:var(--sand)}
.ly .faq-group{margin:0 0 48px;scroll-margin-top:110px}
.ly .faq-group h2{font-size:clamp(1.4rem,2.4vw,1.8rem);color:var(--sage-d);margin:0 0 8px}
.ly .faq-group details:first-of-type{border-top:1px solid #D8DCD2}
.ly .faq-more{background:var(--sand);border-radius:24px;padding:32px}
.ly .faq-more h3{font-size:1.5rem;margin:0 0 8px;color:var(--sage-d)}
.ly .faq-more p{margin:0 0 16px}
.ly .faq-more a:not(.more):not(.faq-ghost){color:var(--clay-d)}
.ly .faq-btns{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0}
.ly .faq-ghost{display:inline-block;border:1.5px solid var(--sage-d);color:var(--sage-d);border-radius:999px;padding:12px 22px;font-weight:600;text-decoration:none}
@media (max-width:900px){
 .ly .faq-top{padding:48px 0 40px;border-radius:0 0 32px 32px}
 .ly .faq-wrap{grid-template-columns:1fr;gap:28px}
 .ly .faq-nav{position:static;flex-direction:row;flex-wrap:wrap}
 .ly .faq-nav a{border:1px solid #CBD2C6}
}
.ly .faq-more .more{background:var(--clay);color:#fff;border-color:var(--clay)}
.ly .faq-more .more i{color:#fff}

/* About page */
.ly .ab-hero{background:var(--sage-l);padding:72px 0 80px;border-radius:0 0 56px 56px}
.ly .ab-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.ly .ab-hero h1{font-size:clamp(2.2rem,4.4vw,3.4rem);color:var(--sage-d);margin:16px 0}
.ly .ab-lead{font-size:1.12rem;color:var(--muted);max-width:52ch;margin:0 0 24px}
.ly .ab-art{aspect-ratio:4/5;max-width:420px;justify-self:end;width:100%;border-radius:220px 220px 24px 24px;background:var(--sand) var(--room) 52% 55%/300% auto no-repeat}
.ly .ab-facts .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:-36px;position:relative}
.ly .ab-facts .wrap>div{background:#fff;border-radius:20px;padding:22px 24px;box-shadow:0 18px 40px -26px rgba(0,0,0,.35)}
.ly .ab-facts b{display:block;font-family:var(--font-head);font-size:1.6rem;color:var(--sage-d);font-weight:var(--head-w)}
.ly .ab-facts span{color:var(--muted);font-size:.92rem}
.ly .ab-story{padding:88px 0 40px}
.ly .ab-story .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px}
.ly .ab-story h2,.ly .ab-areas h2,.ly .ab-cta h2{font-size:clamp(1.8rem,3vw,2.5rem);color:var(--sage-d);margin:0 0 16px}
.ly .ab-story p{font-size:1.06rem;margin:0 0 1em}
.ly .ab-areas{padding:56px 0 88px}
.ly .ab-sub{color:var(--muted);margin:0 0 28px}
.ly .ab-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ly .ab-card{background:var(--sand);border-radius:22px;padding:28px}
.ly .ab-card svg{color:var(--sage-d);background:var(--sage-l);border-radius:50%;padding:12px;box-sizing:content-box;margin-bottom:14px}
.ly .ab-card h3{font-size:1.25rem;color:var(--sage-d);margin:0 0 8px}
.ly .ab-card p{margin:0;color:var(--muted);font-size:.96rem}
.ly .ab-note{margin:28px 0 0;color:var(--muted);max-width:70ch}
.ly .ab-note a{color:var(--clay-d)}
.ly .ab-cta{padding:0 0 96px}
.ly .ab-cta .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;background:var(--sand);border-radius:32px;padding:48px;align-items:center}
.ly .ab-contact{list-style:none;margin:0;padding:0}
.ly .ab-contact li{margin:0 0 16px}
.ly .ab-contact b{display:block;color:var(--sage-d);font-size:.85rem;margin-bottom:2px}
.ly .ab-contact a{color:var(--clay-d)}
@media (max-width:900px){
 .ly .ab-hero{padding:48px 0 64px;border-radius:0 0 36px 36px}
 .ly .ab-grid,.ly .ab-story .wrap,.ly .ab-cta .wrap{grid-template-columns:1fr;gap:28px}
 .ly .ab-art{justify-self:start;max-width:320px}
 .ly .ab-facts .wrap{grid-template-columns:1fr;margin-top:-28px}
 .ly .ab-cards{grid-template-columns:1fr}
 .ly .ab-cta .wrap{padding:32px 24px}
}
.ly .ab-hero .more,.ly .ab-cta .more{background:var(--clay);color:#fff;border-color:var(--clay)}
.ly .ab-story{padding-top:56px}
.ly .pills li:has(a){padding:0}
.ly .pills li a{display:block;padding:9px 18px;border-radius:999px;color:var(--sage-d);text-decoration:none;transition:background .2s}
.ly .pills li a:hover,.ly .pills li a:focus-visible{background:#C9D6C2}
.ly .pills li a::after{content:" \2192";opacity:.6}

/* Contact page */
.ly .ct-top{background:var(--sage-l);padding:72px 0 56px;border-radius:0 0 48px 48px}
.ly .ct-top h1{font-size:clamp(2.2rem,4.5vw,3.4rem);margin:0 0 12px;color:var(--sage-d)}
.ly .ct-body{padding:56px 0 40px}
.ly .ct-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:start}
.ly .ct-info{display:grid;gap:16px}
.ly .ct-card{background:var(--sand);border-radius:22px;padding:24px 28px}
.ly .ct-card h2{font-size:1.2rem;color:var(--sage-d);margin:0 0 8px}
.ly .ct-card p{margin:0 0 6px}
.ly .ct-card a,.ly .ct-small a{color:var(--clay-d)}
.ly .ct-small{font-size:.88rem;color:var(--muted)}
.ly .ct-emerg{margin:4px 6px 0}
.ly .ct-formcard{background:#fff;border:1px solid #E3E3DA;border-radius:28px;padding:36px;box-shadow:0 24px 50px -36px rgba(0,0,0,.35)}
.ly .ct-formcard h2{font-size:1.6rem;color:var(--sage-d);margin:0 0 20px}
.ly .ct-form label,.ly .ct-form legend{display:block;font-weight:500;color:var(--sage-d);font-size:.92rem;margin:0 0 6px}
.ly .ct-form input[type=text],.ly .ct-form input[type=email],.ly .ct-form input[type=tel],.ly .ct-form input[type=number],.ly .ct-form select,.ly .ct-form textarea{width:100%;box-sizing:border-box;font:inherit;color:var(--ink);background:var(--cream);border:1.5px solid #CBD2C6;border-radius:14px;padding:12px 16px;margin:0 0 18px;max-width:100%}
.ly .ct-form textarea{min-height:140px;resize:vertical}
.ly .ct-form input:focus,.ly .ct-form select:focus,.ly .ct-form textarea:focus{outline:none;border-color:var(--sage-d);box-shadow:0 0 0 3px rgba(78,99,80,.18)}
.ly .ct-form input[type=submit],.ly .ct-form button[type=submit],.ly .ct-form button:not([type]),.ly .ct-form .wpforms-submit,.ly .ct-form .wpcf7-submit{background:var(--clay);color:#fff;border:0;border-radius:999px;padding:14px 32px;font:inherit;font-weight:600;cursor:pointer}
.ly .ct-form input[type=submit]:hover,.ly .ct-form button[type=submit]:hover{background:var(--clay-d)}
.ly .ct-form .required,.ly .ct-form .wpforms-required-label{color:var(--clay-d)}
.ly .ct-form em,.ly .ct-form .wpforms-field-sublabel{font-size:.8rem;color:var(--muted);font-style:normal}
.ly .ct-form img{max-width:100%;height:auto;border-radius:16px}
.ly .ct-map{padding:0 0 96px}
.ly .ct-map iframe{display:block;width:100%;height:380px;border:0;border-radius:28px;background:var(--sand)}
@media (max-width:900px){
 .ly .ct-top{padding:48px 0 40px;border-radius:0 0 32px 32px}
 .ly .ct-grid{grid-template-columns:1fr}
 .ly .ct-formcard{padding:24px}
 .ly .ct-map iframe{height:300px}
}
.ly .ct-social{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.ly .ct-social a,.ly .ct-social button{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--sage-d);border:0;border-radius:999px;padding:10px 16px;font:inherit;font-size:.92rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background .2s}
.ly .ct-social a:hover,.ly .ct-social button:hover,.ly .ct-social button:focus-visible{background:var(--sage-l)}
.ly .ct-card .ct-social a{color:var(--sage-d)}
.ly .ct-xhs{font-size:.78rem;background:var(--clay);color:#fff;border-radius:6px;padding:2px 5px;line-height:1.2}
.ly .ct-wx{position:relative}
.ly .ct-qr{position:absolute;left:0;bottom:calc(100% + 10px);z-index:5;background:#fff;border-radius:18px;padding:14px;box-shadow:0 20px 44px -18px rgba(0,0,0,.4);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s;display:block;text-align:center}
.ly .ct-qr img{display:block;width:180px;height:180px;border-radius:10px}
.ly .ct-qr em{display:block;font-style:normal;font-size:.8rem;color:var(--muted);margin-top:8px}
.ly .ct-wx:hover .ct-qr,.ly .ct-wx:focus-within .ct-qr{opacity:1;visibility:visible;transform:none}
.ly .ct-xhs-img{width:22px;height:22px;border-radius:6px;object-fit:cover;display:block}
.ly .pg-body.pg-wide{max-width:1180px}
.ly .ct-wx.open .ct-qr{opacity:1;visibility:visible;transform:none}
@media (max-width:900px){
 .ly .ct-qr{position:fixed;left:50%;top:50%;bottom:auto;transform:translate(-50%,-46%);z-index:1000}
 .ly .ct-wx:hover .ct-qr,.ly .ct-wx:focus-within .ct-qr,.ly .ct-wx.open .ct-qr{transform:translate(-50%,-50%)}
 .ly .ct-qr img{width:min(240px,64vw);height:auto;aspect-ratio:1/1}
 .ly .ct-wx.open::after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:999}
}

/* Long text / policy page */
.ly .pol-body{padding:56px 0 96px}
.ly .pol-wrap{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start}
.ly .pol-wrap:not(:has(.faq-nav)){grid-template-columns:minmax(0,780px)}
.ly .pol-text{max-width:760px}
.ly .pol-text h2{font-size:clamp(1.4rem,2.4vw,1.8rem);color:var(--sage-d);margin:2em 0 .6em;scroll-margin-top:110px}
.ly .pol-text h2:first-child{margin-top:0}
.ly .pol-text p,.ly .pol-text li{max-width:none}
.ly .pol-text ul{padding-left:1.3em}
.ly .pol-text li{margin-bottom:.5em}
.ly .pol-text a{color:var(--clay-d)}
.ly .pol-text .faq-more{margin-top:48px}
@media (max-width:900px){.ly .pol-wrap{grid-template-columns:1fr;gap:28px}}

/* Form "thank you" message */
.ly .ct-form .wpforms-confirmation-container-full,.ly .ct-form .wpforms-confirmation-container,.ly .ct-form .wpcf7-response-output,.ly .ct-form .gform_confirmation_message{background:var(--sage-l);color:var(--sage-d);border:0;border-radius:18px;padding:24px 28px;margin:0;max-width:none;width:auto;font-size:1.05rem;line-height:1.6}
.ly .ct-form .wpforms-confirmation-container-full p{margin:0;color:var(--sage-d)}
.ly .ct-form .wpforms-confirmation-container-full::before{content:"\2713";display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--sage-d);color:#fff;font-weight:700;margin-bottom:12px}
.ly .pol-text h3{font-size:clamp(1.3rem,2.2vw,1.6rem);color:var(--sage-d);margin:2em 0 .6em;scroll-margin-top:110px}

/* logo mark */
.ly .logo{display:inline-flex;align-items:center;gap:12px}
.ly .logo .mk{width:44px;height:44px;display:block;flex:none}
.ly .ly-foot .mk-f{display:block;width:34px;height:34px;margin:0 auto 14px;opacity:.9}
@media(max-width:900px){.ly .logo .mk{width:38px;height:38px}}
