@import url('https://fonts.googleapis.com/css2?family=Anton&family=Barlow+Condensed:wght@700&family=Montserrat:wght@400;500;600;700;800&display=swap');
:root{--purple:#392253;--deep:#24172e;--lavender:#f5f1f8;--gold:#c6a66b;--cream:#f9f6ee;--ink:#292231;--muted:#6b6470;--font-display:'Manrope',sans-serif;--font-body:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);line-height:1.12;letter-spacing:-.055em}h1{font-size:clamp(3.7rem,7.5vw,7.2rem);font-weight:700;margin-bottom:26px}h2{font-size:clamp(2.4rem,4.6vw,4.7rem);font-weight:650;margin-bottom:22px}h3{font-size:1.48rem;letter-spacing:-.035em}h1 em,h2 em{font-style:normal;font-weight:500;color:#a588c8}p{color:var(--muted)}.wrap{width:min(1180px,calc(100% - 52px));margin:auto}.skip{position:absolute;top:-100px;left:12px;background:#fff;padding:12px;z-index:30}.skip:focus{top:12px}.header{background:#fff;position:sticky;top:0;z-index:20;box-shadow:0 1px 0 rgba(35,20,45,.08)}.nav{min-height:89px;display:flex;align-items:center;justify-content:space-between;gap:30px}.identity{display:flex;align-items:center}.brand-logo{width:208px;max-height:57px;object-fit:contain;object-position:left center}nav{display:flex;align-items:center;gap:29px}nav>a{font-size:.87rem;font-weight:700;color:#403747}nav>a:hover{color:#8867aa}.nav-book{background:var(--purple);color:white;padding:12px 19px;border-radius:3px}.nav-book:hover{color:#fff;background:#5b3c77}.menu-btn{display:none;border:0;background:none;font-size:1.6rem;color:var(--purple)}.hero{background:var(--cream);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:650px}.hero-copy{padding:105px 35px 80px 0;align-self:center}.eyebrow{font-size:.72rem;letter-spacing:.19em;font-weight:800;color:var(--purple);margin-bottom:25px}.eyebrow .line{display:inline-block;width:25px;height:1px;background:var(--gold);vertical-align:middle;margin-right:10px}.hero h1{color:var(--deep)}.hero h1 em{color:var(--purple)}.hero-lede{max-width:465px;font-size:1.18rem;line-height:1.78}.hero-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:16px 22px;border-radius:3px;font-size:.88rem;font-weight:800;cursor:pointer;min-height:53px;border:1px solid transparent;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--purple);color:#fff}.primary:hover{background:#52366f}.secondary{border-color:#d5cbd9;color:var(--purple)}.secondary:hover{background:#fff}.small-note{font-size:.73rem;letter-spacing:.08em;margin-top:35px}.hero-art{position:relative;margin:34px 0 34px 6px;background:radial-gradient(circle at 65% 38%,#ded2e5,#a78abc 73%,#7d618f);min-height:580px;overflow:hidden;border-radius:240px 240px 5px 5px}.art-ring{position:absolute;border:1.5px solid rgba(255,255,255,.58);border-radius:50%;width:700px;height:700px;left:50%;top:23%;transform:translate(-50%,-2%)}.ring-two{width:520px;height:520px;top:32%}.ring-three{width:350px;height:350px;top:41%}.art-sun{position:absolute;width:230px;height:230px;background:linear-gradient(145deg,#ebd3a2,#c59b57);border-radius:50%;top:24%;left:50%;transform:translateX(-50%);box-shadow:0 0 85px rgba(235,221,190,.6)}.art-caption{position:absolute;bottom:42px;left:0;right:0;text-align:center;color:#fff;font-size:.73rem;font-weight:800;letter-spacing:.22em}.art-caption span{color:var(--gold);padding:0 10px}.ribbon{background:var(--purple);color:white;overflow:hidden;padding:18px 0;font-size:.71rem;font-weight:700;letter-spacing:.16em;text-align:center}.ribbon span{color:#e5cfab}.ribbon b{padding:0 20px;color:#d9b678}.section{padding:110px 0;scroll-margin-top:88px}.about-grid{display:grid;grid-template-columns:1fr 2fr;gap:60px}.section-number{color:#988b9c;font-size:.72rem;letter-spacing:.15em;font-weight:800;padding-top:10px}.about-grid>div:last-child{max-width:790px}.about-grid p:not(.eyebrow){font-size:1.04rem;max-width:670px}.text-link{font-size:.87rem;color:var(--purple);font-weight:800;display:inline-block;margin-top:20px;border-bottom:2px solid var(--gold);padding-bottom:8px}.text-link span{margin-left:28px}.services{background:var(--lavender)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-heading>div{max-width:630px}.section-heading>p{max-width:300px;font-size:.92rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;padding:34px 29px 28px;min-height:315px;border:1px solid #eee8f2}.service-icon{color:var(--gold);font-size:.75rem;font-weight:800}.service-line{height:1px;background:#dfd5e2;margin:42px 0 27px}.service-card p{font-size:.93rem}.services-disclaimer{font-size:.76rem;margin:24px 0 0}.statement{background:var(--purple)}.statement-grid{display:grid;grid-template-columns:1fr 2fr;gap:60px}.light{color:#e3ca92}.statement h2{color:#fff}.statement h2 em{color:#e1c6a2}.statement p:not(.eyebrow){color:#e0d6e6;max-width:660px}.light-button{background:white;color:var(--purple);margin-top:22px}.booking{background:#fcfaf7}.booking-grid{display:grid;grid-template-columns:1fr 420px;align-items:center;gap:85px}.booking-grid>div>p:not(.eyebrow){max-width:450px}.booking-card{background:#fff;box-shadow:0 12px 55px rgba(52,36,61,.07);border:1px solid #ede7eb;padding:39px}.sparkle{color:var(--gold);font-size:2rem;display:block;margin-bottom:20px}.booking-card h3{font-size:1.65rem}.booking-card .button{width:100%;margin-top:16px}.booking-card .mini{font-size:.73rem;margin:16px 0 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-details>div{padding:21px 0;border-bottom:1px solid #e9e3e9;display:flex;flex-direction:column}.contact-details span{font-size:.7rem;font-weight:800;letter-spacing:.15em;color:#9776a5}.contact-details strong{margin-top:6px;font-size:1.03rem}.contact-details small{color:var(--muted)}footer{background:#211729;color:#fff;padding:55px 0}.footer-grid{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-grid p{color:#c2b6c8;font-size:.77rem;margin:9px 0}.footer-grid>div:last-child{text-align:right}.footer-logo{width:205px;background:#fff;padding:8px;border-radius:3px}dialog{border:0;border-radius:8px;max-width:475px;width:calc(100% - 35px);box-shadow:0 25px 90px #0004;padding:0}dialog::backdrop{background:#22142baa}.dialog-inner{padding:35px;position:relative}.dialog-inner h2{font-size:2rem}.dialog-inner code{background:#f5eff8;padding:2px}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:2rem;cursor:pointer;color:var(--purple)}@media(max-width:950px){.nav{min-height:73px}nav{gap:15px}nav>a{font-size:.8rem}.brand-logo{width:170px}.hero-grid{min-height:auto}.hero-art{min-height:490px}.hero-copy{padding:75px 10px 75px 0}.booking-grid{grid-template-columns:1fr 360px;gap:35px}.section{padding:80px 0}}@media(max-width:720px){.wrap{width:min(100% - 36px,520px)}.menu-btn{display:block}nav{display:none;position:absolute;top:73px;left:0;right:0;background:white;flex-direction:column;padding:20px 25px;align-items:stretch;box-shadow:0 10px 15px #0001}nav.open{display:flex}nav>a{font-size:1rem;padding:10px 0}.nav-book{text-align:center}.hero-grid,.about-grid,.statement-grid,.booking-grid,.contact-grid{grid-template-columns:1fr;gap:25px}.hero-copy{padding:75px 0 25px}.hero-art{margin:5px 0 30px;min-height:390px;border-radius:220px 220px 4px 4px}.hero h1{font-size:clamp(3.3rem,14vw,5rem)}.hero-lede{font-size:1rem}.ribbon{font-size:.55rem;line-height:2}.ribbon b{padding:0 7px}.section{padding:68px 0}.section-heading{display:block}.service-grid{grid-template-columns:1fr}.service-card{min-height:230px}.service-line{margin:24px 0}.statement-grid{gap:12px}.booking-card{padding:28px}.contact-grid{gap:10px}.footer-grid{display:block}.footer-grid>div:last-child{text-align:left;margin-top:28px}}

/* Official Chiro-Listic brand palette and typography */
:root{--purple:#54218c;--deep:#171719;--lavender:#f3f3f5;--gold:#7a32b5;--cream:#f3f3f5;--ink:#171719;--muted:#575761;--font-display:'Anton',Impact,sans-serif;--font-body:'Montserrat',Arial,sans-serif}
body{background:#ffffff}h1,h2{font-family:'Anton',Impact,sans-serif;font-weight:400;letter-spacing:.005em;text-transform:uppercase;line-height:1.07}h3,.service-card h3{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;letter-spacing:.005em;text-transform:uppercase;font-size:1.85rem}h1 em,h2 em{font-weight:400;color:#7a32b5}h1{font-size:clamp(3.25rem,6.8vw,6.9rem)}h2{font-size:clamp(2.4rem,4.6vw,4.45rem)}.eyebrow,.section-number,.art-caption,.contact-details span,.ribbon{font-family:'Montserrat',Arial,sans-serif;font-weight:800}.header{box-shadow:0 1px 0 #17171919}.brand-logo{width:220px;max-height:80px}.nav{min-height:92px}nav>a{color:#171719}nav>a:hover{color:#7a32b5}.nav-book,.primary{background:#54218c;color:#fff}.nav-book:hover,.primary:hover{background:#7a32b5}.hero{background:#f3f3f5}.hero-grid{min-height:650px}.hero h1{color:#171719}.hero h1 em{color:#54218c}.hero-art{background:linear-gradient(150deg,#171719 6%,#54218c 57%,#7a32b5 100%);border-radius:220px 220px 8px 8px}.art-ring{border-color:#ffffff32}.art-sun{background:linear-gradient(130deg,#7a32b5,#54218c);box-shadow:0 0 80px #c19bec48}.hero-mark{position:absolute;left:12%;top:30%;width:76%;height:43%;object-fit:contain;filter:drop-shadow(0 12px 30px #12081c66)}.art-caption span{color:#ffffff}.ribbon{background:#54218c}.ribbon span,.ribbon b{color:#fff}.service-card{border-color:#dddddf;border-top:4px solid #7a32b5}.service-icon{color:#54218c}.service-line{background:#e4deed}.statement{background:#171719}.statement h2 em{color:#b981eb}.statement p:not(.eyebrow){color:#ece8f1}.light{color:#bc8ce7}.light-button{color:#54218c}.booking{background:#f3f3f5}.booking-card{border-color:#dedbe4}.sparkle{color:#7a32b5}.contact-details span{color:#54218c}footer{background:#171719}.footer-logo{width:235px;max-width:100%;background:transparent;padding:0}.footer-grid p{color:#ddd}.text-link{border-color:#7a32b5}.secondary{border-color:#54218c}.secondary:hover{background:#ede4f5}.small-note{color:#54218c}.dialog-inner code{background:#f3f3f5}
@media(max-width:950px){.brand-logo{width:175px}.nav{min-height:77px}}
@media(max-width:720px){.brand-logo{width:165px}nav{top:77px}.hero h1{font-size:clamp(3.3rem,12vw,5.1rem)}.hero-mark{top:28%}}
