
/* Request an Appointment */
.sy-ap{padding:0 0 4rem}
.sy-ap-label{display:block;font-family:"Geist Mono",monospace;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 1rem;color:#a8384a;font-weight:400}
.sy-ap h2{font-weight:300;font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-.03em;line-height:1.05;margin:0}
.sy-ap-hero{position:relative;margin-top:-5.8rem;color:#fff;overflow:hidden;isolation:isolate;padding-bottom:5rem}
.sy-ap-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.sy-ap-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,18,16,.55),rgba(20,18,16,.3) 30%,rgba(20,18,16,.6)),linear-gradient(90deg,rgba(20,18,16,.55),rgba(20,18,16,.1) 60%)}
.sy-ap-in{width:min(76rem,calc(100% - 2.5rem));margin:0 auto;padding-top:11rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,35rem);gap:4rem;align-items:center}
.sy-crumbs{font-size:.875rem;margin:0 0 1.25rem;color:rgba(255,255,255,.8)}.sy-crumbs a{color:inherit}.sy-crumbs [aria-current]{color:#fff}
.sy-ap-hero .sy-ap-label{color:#fff;opacity:.85}
.sy-ap h1{font-weight:300;font-size:clamp(2.8rem,4.8vw,4.25rem);line-height:1;letter-spacing:-.045em;margin:0;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.25)}
.sy-ap-lede{color:#f3efe6;font-size:1.15rem;line-height:1.55;max-width:44ch;margin:1.1rem 0 0;text-shadow:0 1px 12px rgba(0,0,0,.3)}
.sy-ap-who{display:flex;align-items:center;gap:.9rem;margin-top:1.75rem}.sy-ap-who img{width:3.5rem;height:3.5rem;border-radius:50%;object-fit:cover;object-position:center 15%;border:2px solid rgba(255,255,255,.7)}
.sy-ap-who b{display:block;font-weight:500}.sy-ap-who span{color:#e6e0d4;font-size:.95rem}
.sy-ap-call{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.5rem;color:#fff;font-size:1.05rem}.sy-ap-call a{color:#fff;font-weight:500}
/* the card */
.sy-ap-card{color:#222;background:rgba(255,254,248,.88);-webkit-backdrop-filter:blur(22px) saturate(180%);backdrop-filter:blur(22px) saturate(180%);border:1px solid rgba(255,255,255,.6);border-radius:1.4rem;padding:2rem;box-shadow:0 30px 80px rgba(0,0,0,.25)}
.sy-ap-prog{display:flex;justify-content:space-between;font-size:.85rem;color:#8a857a}.sy-ap-prog .on{color:#222}
.sy-ap-bar{height:4px;border-radius:2px;background:rgba(34,30,25,.08);margin:.6rem 0 1.6rem}.sy-ap-bar i{display:block;height:100%;width:33.4%;border-radius:2px;background:#a8384a;transition:width .45s cubic-bezier(.2,.9,.25,1)}
.sy-ap-step{display:none;flex-direction:column;gap:1rem}.sy-ap-step.on{display:flex;animation:syIn .45s cubic-bezier(.2,.9,.25,1)}
@keyframes syIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
.sy-ap-step h2{font-size:1.9rem;color:#222}
.sy-ap-row{display:grid;gap:.75rem}.sy-ap-row.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sy-ap-row.three{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)}
.sy-ap-f{display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;color:#3a3833}
.sy-ap-f input,.sy-ap-f textarea{font:inherit;font-size:1rem;width:100%;min-width:0;box-sizing:border-box;border:1px solid #d9d4c8;border-radius:.65rem;background:#fffef8;padding:.75rem .9rem;min-height:3rem;outline:0;color:#222}
.sy-ap-f input:focus,.sy-ap-f textarea:focus{border-color:#a8384a;box-shadow:0 0 0 3px rgba(168,56,74,.15)}
.sy-ap-f input[aria-invalid=true]{border-color:#a8384a}
.sy-ap fieldset{border:0;padding:0;margin:0}.sy-ap legend{font-size:.9rem;color:#3a3833;margin-bottom:.5rem;padding:0}
.sy-ap-chips{display:flex;flex-wrap:wrap;gap:.4rem}.sy-ap-chip input,.sy-wb-d input,.sy-seg input,.sy-wb-any input{position:absolute;opacity:0}
.sy-ap-chip span{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1.1rem;border:1px solid #d9d4c8;border-radius:999px;background:#fffef8;font-size:.95rem;cursor:pointer;transition:transform .1s ease-out,background .2s}
.sy-ap-chip:active span{transform:scale(.96)}.sy-ap-chip input:checked+span{background:#222;color:#fff;border-color:#222}.sy-ap-chip input:focus-visible+span{box-shadow:0 0 0 3px rgba(168,56,74,.3)}
.sy-ap-nav{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:.4rem}
.sy-ap-btn{border:0;border-radius:.4rem;background:#a8384a;color:#fff;font:inherit;font-size:1.05rem;min-height:3.4rem;padding:0 1.5rem;cursor:pointer;transition:transform .1s ease-out}.sy-ap-btn:active{transform:scale(.97)}
.sy-ap-back{border:0;background:none;font:inherit;color:#54514a;cursor:pointer;min-height:3rem}
.sy-ap-err{color:#a8384a;font-size:.9rem;margin:0;display:none}.sy-ap-err.on{display:block}
.sy-ap-note{font-size:.82rem;color:#6f6a60;margin:0}.sy-ap-note a{color:#a8384a}
.sy-ap-done{display:none;text-align:center;padding:1rem 0}.sy-ap-done.on{display:block}.sy-ap-done b{display:block;font-weight:300;font-size:2rem;letter-spacing:-.03em;margin:.5rem 0}.sy-ap-done a{color:#a8384a}
.sy-ap-done i{display:inline-grid;place-items:center;width:3.5rem;height:3.5rem;border-radius:50%;background:#a8384a;color:#fff;font-style:normal;font-size:1.6rem}
/* when works best */
.sy-wb-h{display:flex;justify-content:space-between;align-items:center;margin-top:.3rem;font-size:.95rem;color:#3a3833}
.sy-wb-any{display:flex;align-items:center;gap:.6rem;cursor:pointer;min-height:2.75rem}
.sy-wb-sw{width:2.75rem;height:1.6rem;border-radius:1rem;background:#d9d4c8;position:relative;transition:background .25s}.sy-wb-sw i{position:absolute;top:3px;left:3px;width:1.25rem;height:1.25rem;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .35s cubic-bezier(.2,.9,.25,1)}
.sy-wb-any input:checked+.sy-wb-sw{background:#a8384a}.sy-wb-any input:checked+.sy-wb-sw i{transform:translateX(1.15rem)}.sy-wb-any input:focus-visible+.sy-wb-sw{box-shadow:0 0 0 3px rgba(168,56,74,.3)}
.sy-wb-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;transition:opacity .25s}.is-any .sy-wb-days{opacity:.45}
.sy-wb-d span{position:relative;display:flex;flex-direction:column;gap:.2rem;padding:.85rem .75rem .75rem;border:1px solid #ddd7ca;border-radius:.9rem;background:#fffef8;cursor:pointer;transition:transform .1s ease-out,background .2s,border-color .2s}
.sy-wb-d:active span{transform:scale(.96)}.sy-wb-d b{font-weight:500;font-size:1.15rem;color:#222}.sy-wb-d em{font-style:normal;font-size:.75rem;color:#8a857a}
.sy-wb-ck{position:absolute;top:.45rem;right:.45rem;width:1.1rem;height:1.1rem;border-radius:50%;background:#a8384a;color:#fff;font-style:normal;font-size:.7rem;display:grid;place-items:center;opacity:0;transform:scale(.6);transition:opacity .2s,transform .3s cubic-bezier(.2,.9,.25,1)}
.sy-wb-d input:checked+span{border-color:#a8384a;background:#fbf1f2;box-shadow:inset 0 0 0 1px #a8384a}.sy-wb-d input:checked+span .sy-wb-ck{opacity:1;transform:none}.sy-wb-d input:focus-visible+span{box-shadow:0 0 0 3px rgba(168,56,74,.3)}
.sy-wb-d.any-card{display:none}
.sy-seg{position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));background:rgba(34,30,25,.07);border-radius:.75rem;padding:4px;--i:0}
.sy-seg label{position:relative;z-index:1}.sy-seg span{display:grid;place-items:center;min-height:2.75rem;font-size:.95rem;color:#54514a;cursor:pointer;transition:color .2s}
.sy-seg input:checked+span{color:#222;font-weight:500}.sy-seg input:focus-visible+span{outline:2px solid rgba(168,56,74,.4);border-radius:.55rem}
.sy-seg-thumb{position:absolute;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/var(--n));border-radius:.55rem;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.06),0 4px 12px rgba(0,0,0,.08);transform:translateX(calc(var(--i)*100%));transition:transform .4s cubic-bezier(.2,.9,.25,1)}
.sy-wb-sum{display:flex;align-items:center;gap:.75rem;margin-top:.3rem;padding:.75rem .9rem;border-radius:.9rem;background:rgba(34,30,25,.05)}
.sy-wb-sum img{width:2.5rem;height:2.5rem;border-radius:50%;object-fit:cover;object-position:center 15%;flex:none}.sy-wb-sum p{margin:0;font-size:.95rem;line-height:1.45;color:#3a3833}.sy-wb-sum b{font-weight:500;color:#222}
/* below */
.sy-ap-w{width:min(76rem,calc(100% - 2.5rem));margin:6rem auto 0}
.sy-ap-visit{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);border-radius:1.2rem;overflow:hidden;background:#f6f3ea}
.sy-ap-map{position:relative;display:block;min-height:26rem;background:#ece8df;overflow:hidden;line-height:0}.sy-ap-map img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.9,.25,1)}.sy-ap-map:hover img{transform:scale(1.015)}
.sy-ap-pin{position:absolute;left:50%;top:50%;width:2.6rem;height:2.6rem;margin:-2.6rem 0 0 -1.3rem;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#a8384a;box-shadow:0 8px 20px rgba(168,56,74,.4)}.sy-ap-pin::after{content:"";position:absolute;inset:.75rem;border-radius:50%;background:#fffef8}
.sy-ap-hint{position:absolute;right:1rem;bottom:1rem;background:rgba(255,254,248,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;padding:.55rem 1rem;font-size:.9rem;line-height:1.2;color:#222;box-shadow:0 4px 14px rgba(0,0,0,.1)}
.sy-ap-osm{position:absolute;left:.75rem;bottom:.6rem;font-size:.7rem;line-height:1.2;color:#54514a;background:rgba(255,254,248,.8);padding:.15rem .4rem;border-radius:.25rem}
.sy-ap-info{padding:2.5rem;display:flex;flex-direction:column;gap:1.5rem}
.sy-ap-info h3{font-weight:500;font-size:.8rem;font-family:"Geist Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:#a8384a;margin:0 0 .4rem}
.sy-ap-info p{margin:0;color:#3a3833;line-height:1.55}.sy-ap-info a{color:#a8384a;font-weight:500}
.sy-ap-hours{border-collapse:collapse;width:100%;font-size:.95rem}.sy-ap-hours td{padding:.4rem 0;border-top:1px solid #e3ded3}.sy-ap-hours td:last-child{text-align:right;color:#54514a}
.sy-ap-logos{overflow:hidden;margin-top:1.5rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.sy-ap-track{display:flex;gap:4.5rem;width:max-content;animation:syMq 38s linear infinite;align-items:center}
.sy-ap-track img{height:3.25rem;width:auto;object-fit:contain;filter:grayscale(1);opacity:.7;transition:filter .3s,opacity .3s}.sy-ap-track img:hover{filter:none;opacity:1}
@keyframes syMq{to{transform:translateX(-50%)}}
.sy-ap-home{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3.5rem;align-items:center}
.sy-ap-home>img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:1.2rem}
.sy-ap-rv{display:grid;margin-top:1.75rem}.sy-ap-q{grid-area:1/1;margin:0;opacity:0;transform:translateY(8px);transition:opacity .5s,transform .6s cubic-bezier(.2,.9,.25,1);pointer-events:none}
.sy-ap-q.on{opacity:1;transform:none;pointer-events:auto}
.sy-ap blockquote{border:0!important;padding:0!important;quotes:none;text-align:left}.sy-ap blockquote::before,.sy-ap blockquote::after{content:none}
.sy-ap-q blockquote{margin:.75rem 0;font-weight:300;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.35;letter-spacing:-.015em;color:#222}
.sy-ap-q figcaption{color:#54514a;font-size:.95rem;text-align:left}.sy-stars{color:#d8a33a;letter-spacing:2px}
.sy-ap-dots{display:flex;gap:.5rem;margin-top:1.5rem}.sy-ap-dots button{width:2.75rem;height:2.75rem;border:0;background:none;padding:0;cursor:pointer;display:grid;place-items:center}
.sy-ap-dots button i{width:.55rem;height:.55rem;border-radius:50%;background:#d9d4c8;transition:background .2s,transform .2s}.sy-ap-dots button[aria-current=true] i{background:#a8384a;transform:scale(1.25)}
.sy-ap-more{display:inline-block;margin-top:1rem;color:#a8384a;font-weight:500}
.sy-ap-cards{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.sy-ap-c{background:#f6f3ea;border-radius:1.1rem;padding:2.25rem}.sy-ap-c h3{font-weight:300;font-size:1.75rem;letter-spacing:-.02em;margin:0 0 .6rem}.sy-ap-c p{color:#54514a;margin:0 0 1.25rem;line-height:1.55}
.sy-ap-c.dk{background:#222;color:#fff}.sy-ap-c.dk .sy-ap-label{color:#e07a8b}.sy-ap-c.dk h3{color:#fff}.sy-ap-c.dk p{color:#d9d4c8}
.sy-ap-c a.lnk{color:#a8384a;font-weight:500}.sy-ap-c a.bt{display:inline-flex;align-items:center;min-height:3rem;padding:0 1.2rem;border-radius:.25rem;background:#fffef8;color:#222;text-decoration:none}
@media (max-width:991px){.sy-ap-in{grid-template-columns:minmax(0,1fr);gap:2rem;padding-top:9rem}.sy-ap-visit,.sy-ap-home{grid-template-columns:minmax(0,1fr)}.sy-ap-map{min-height:20rem}}
@media (max-width:600px){.sy-ap-card{padding:1.4rem}.sy-ap-row.two,.sy-ap-row.three{grid-template-columns:minmax(0,1fr)}
 .sy-wb-days{grid-template-columns:repeat(3,minmax(0,1fr))}.sy-wb-d.any-card{display:block}.sy-wb-any{display:none}.sy-seg span{font-size:.85rem}
 .sy-ap-w{margin-top:4rem}.sy-ap-info{padding:1.5rem}.sy-ap-cards{grid-template-columns:1fr}.sy-ap-c{padding:1.6rem}.sy-ap-track{gap:2.5rem}.sy-ap-track img{height:2.5rem}}
@media (prefers-reduced-motion:reduce){.sy-ap-step.on{animation:none}.sy-seg-thumb,.sy-wb-sw i,.sy-wb-ck,.sy-ap-bar i,.sy-ap-q{transition:none}.sy-ap-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto}}
@media (prefers-reduced-transparency:reduce){.sy-ap-card{background:#fffef8;-webkit-backdrop-filter:none;backdrop-filter:none}}

/* header glass (scripts/header_glass.py) */
.navigation .nav-bar.is-main,.navigation .mobile-navbar{background-color:rgba(255,254,248,.84)!important;
 -webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.5),0 1px 0 rgba(34,30,25,.06),0 10px 30px rgba(34,30,25,.08);
 transition:background-color .25s ease,box-shadow .25s ease}
.navigation .nav-link,.navigation .mobile-navbar .login-button,.navigation .mobile-navbar .login-button *{color:#222!important;transition:color .25s ease}
.navigation .nav-divider{background-color:rgba(34,30,25,.14)!important;transition:background-color .25s ease}
.navigation .menu-bar{background-color:#222!important;transition:background-color .25s ease}
.sy-logo-swap{position:relative;display:block;line-height:0}
.sy-logo-swap .is-white{position:absolute;left:0;top:0;height:100%;width:auto;opacity:0;transition:opacity .25s ease}
.sy-logo-swap .is-colour{transition:opacity .25s ease}
html.sy-over .navigation .nav-bar.is-main,html.sy-over .navigation .mobile-navbar{background-color:rgba(20,18,16,.24)!important;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
html.sy-over .navigation .nav-link,html.sy-over .navigation .mobile-navbar .login-button,
html.sy-over .navigation .mobile-navbar .login-button *{color:#fff!important}
html.sy-over .navigation .nav-divider{background-color:rgba(255,255,255,.32)!important}
html.sy-over .navigation .menu-bar{background-color:#fff!important}
html.sy-over .sy-logo-swap .is-white{opacity:1}html.sy-over .sy-logo-swap .is-colour{opacity:0}
@media (prefers-reduced-transparency:reduce){
 .navigation .nav-bar.is-main,.navigation .mobile-navbar{background-color:#fffef8!important;-webkit-backdrop-filter:none;backdrop-filter:none}
 html.sy-over .navigation .nav-bar.is-main,html.sy-over .navigation .mobile-navbar{background-color:rgba(20,18,16,.72)!important}}
@media (prefers-reduced-motion:reduce){.navigation *,.sy-logo-swap img{transition:none!important}}
