:root{--ink:#251f20;--plum:#562839;--plum-deep:#3d1827;--rose:#d9aaa9;--blush:#efd8d3;--cream:#f7f1ec;--paper:#fffaf6;--line:#251f202e;--serif:"Iowan Old Style", "Baskerville", "Times New Roman", serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);margin:0;font-size:16px;line-height:1.55}html,body{max-width:100%;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{object-fit:cover;width:100%;display:block}button,input,textarea,select{font:inherit}.icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.spark{fill:none;stroke:currentColor;stroke-width:1.15px;width:36px;height:36px}.site-header{border-bottom:1px solid var(--line);z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f1eced;grid-template-columns:1fr auto 1fr;align-items:center;height:88px;padding:0 clamp(22px,4vw,70px);display:grid;position:relative}.brand{align-items:center;gap:11px;width:max-content;display:inline-flex}.brand-mark{border:1px solid var(--ink);width:40px;height:40px;font:22px/1 var(--serif);border-radius:50%;place-items:center;font-style:italic;display:grid}.brand>span:last-child,.footer-brand p{flex-direction:column;line-height:1;display:flex}.brand b,.footer-brand b{font:19px/1 var(--serif);letter-spacing:.15em}.brand small,.footer-brand small{letter-spacing:.22em;margin-top:6px;font-size:12px}.nav{align-items:center;gap:clamp(24px,2.6vw,46px);font-size:13px;display:flex}.nav a{position:relative}.nav a:after{content:"";background:var(--plum);height:1px;transition:right .35s;position:absolute;bottom:-7px;left:0;right:100%}.nav a:hover:after{right:0}.header-cta{border:1px solid var(--ink);justify-self:end;align-items:center;gap:16px;padding:13px 18px;font-size:13px;transition:all .25s;display:inline-flex}.header-cta:hover{background:var(--ink);color:var(--cream)}.menu-toggle{background:0 0;border:0;padding:10px;display:none}.menu-toggle span{background:currentColor;width:23px;height:1px;margin:6px 0;transition:all .25s;display:block}.hero{grid-template-columns:51% 49%;min-height:calc(100vh - 88px);display:grid;position:relative;overflow:hidden}.hero:before{content:"";border:1px solid #5628391a;border-radius:50%;width:44vw;height:44vw;position:absolute;top:12%;left:-27vw}.hero-copy{z-index:1;flex-direction:column;justify-content:center;padding:clamp(70px,10vh,130px) clamp(34px,7vw,120px);display:flex;position:relative}.eyebrow{color:var(--plum);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:12px;margin:0 0 24px;font-size:12px;font-weight:650;display:flex}.eyebrow>span{background:currentColor;width:30px;height:1px;display:inline-block}h1,h2,h3,blockquote{font-family:var(--serif);font-weight:400}h1{letter-spacing:-.055em;max-width:760px;margin:0;font-size:clamp(62px,7.2vw,116px);line-height:.83}h1 em,h2 em{color:var(--plum);font-weight:400}.hero-lead{color:#5f5557;max-width:480px;margin:38px 0 30px;font-size:clamp(17px,1.45vw,21px)}.hero-actions{flex-wrap:wrap;align-items:center;gap:34px;display:flex}.btn{cursor:pointer;border:1px solid;justify-content:center;align-items:center;gap:24px;min-height:53px;padding:0 22px;font-size:13px;font-weight:650;transition:transform .25s,background .25s,color .25s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-dark{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn-dark:hover{background:var(--plum);border-color:var(--plum)}.text-link{border-bottom:1px solid var(--ink);align-items:center;gap:12px;padding:9px 0;font-size:13px;display:inline-flex}.hero-visual{min-height:680px;padding:36px 36px 36px 0;position:relative}.hero-image-wrap{background:var(--blush);height:100%;min-height:610px;position:relative;overflow:hidden}.hero-image-wrap img{object-position:center 30%;height:100%;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.hero-image-wrap:hover img{transform:scale(1.025)}.image-caption{color:var(--paper);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.08em;text-transform:uppercase;background:#251f20c2;gap:22px;padding:18px 22px;font-size:12px;display:flex;position:absolute;bottom:0;left:0}.image-caption span{color:var(--rose)}.hero-note{background:var(--paper);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:150px;height:150px;display:flex;position:absolute;bottom:110px;left:-74px;box-shadow:0 20px 60px #3d182717}.hero-note .spark{width:20px;height:20px;color:var(--rose)}.hero-note p{margin:5px 0 0;font-size:12px}.hero-note p b{font:26px/1 var(--serif)}.hero-note small{color:#74696b;font-size:12px;line-height:1.3}.scroll-note{writing-mode:vertical-rl;z-index:2;letter-spacing:.16em;text-transform:uppercase;font-size:12px;position:absolute;bottom:34px;left:28px;transform:rotate(180deg)}.scroll-note span{margin-top:10px}.trust-bar{background:var(--rose);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,1fr);padding:0 clamp(30px,6vw,100px);display:grid}.trust-bar>div{border-right:1px solid #251f2059;align-items:center;gap:22px;min-height:118px;padding:26px clamp(20px,3vw,48px);display:flex}.trust-bar>div:last-child{border-right:0}.trust-bar>div>span{font:italic 28px/1 var(--serif);opacity:.68}.trust-bar p{flex-direction:column;margin:0;display:flex}.trust-bar b{font:18px/1.2 var(--serif)}.trust-bar small{margin-top:6px;font-size:12px}.section{padding:clamp(90px,11vw,170px) clamp(24px,7vw,120px)}.section-head{grid-template-columns:1.25fr .75fr;align-items:end;column-gap:70px;padding-bottom:70px;display:grid}.section-head .eyebrow{grid-column:1/-1}.section-head h2,.experience h2,.faq h2{letter-spacing:-.045em;margin:0;font-size:clamp(48px,5vw,78px);line-height:.98}.section-head>p:last-child{color:#6b6062;max-width:480px;margin:0 0 4px}.treatment-list{border-top:1px solid var(--line)}.treatment-card{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr 64px;align-items:center;gap:34px;min-height:215px;transition:padding .35s,background .35s;display:grid;position:relative}.treatment-card:hover{background:#fffaf6a6;padding:0 20px}.treatment-number{font:italic 22px/1 var(--serif);color:var(--plum)}.treatment-card>div{grid-template-columns:minmax(220px,.9fr) 1.1fr auto;align-items:center;gap:38px;display:grid}.treatment-card h3{margin:0;font-size:clamp(29px,3vw,45px);line-height:1}.treatment-card p{color:#655a5c;max-width:460px;margin:0;font-size:14px}.treatment-card small{text-transform:uppercase;letter-spacing:.11em;white-space:nowrap;font-size:12px}.treatment-card>a{border:1px solid var(--ink);border-radius:50%;place-items:center;width:53px;height:53px;transition:all .25s;display:grid}.treatment-card:hover>a{background:var(--plum);border-color:var(--plum);color:#fff;transform:rotate(5deg)}.studio{background:var(--plum-deep);color:var(--paper);grid-template-columns:48% 52%;display:grid}.studio-image{min-height:790px;position:relative;overflow:hidden}.studio-image img{filter:saturate(.8);height:100%}.vertical-label{background:var(--rose);width:42px;color:var(--ink);writing-mode:vertical-rl;letter-spacing:.18em;place-items:center;font-size:12px;display:grid;position:absolute;top:0;bottom:0;left:0;transform:rotate(180deg)}.studio-copy{flex-direction:column;justify-content:center;padding:clamp(70px,9vw,145px);display:flex}.eyebrow.light{color:var(--blush)}.studio-copy h2{letter-spacing:-.045em;margin:0;font-size:clamp(48px,5vw,76px);line-height:.96}.studio-copy h2 em{color:var(--rose)}.studio-copy>p:not(.eyebrow){color:#fffaf6b3;max-width:590px;margin:34px 0 44px}.studio-values{border-top:1px solid #ffffff2e;margin-bottom:42px}.studio-values>div{border-bottom:1px solid #ffffff2e;grid-template-columns:.6fr 1fr;gap:30px;padding:18px 0;display:grid}.studio-values b{font:18px/1.3 var(--serif)}.studio-values span{color:#ffffff9e;font-size:12px}.btn-light{background:var(--blush);color:var(--ink);border-color:var(--blush);align-self:flex-start}.btn-light:hover{background:var(--paper);border-color:var(--paper)}.experience{grid-template-columns:.8fr 1.2fr;gap:clamp(70px,10vw,170px);display:grid}.experience-copy{align-self:start;position:sticky;top:120px}.experience-copy>p:last-child{color:#6b6062;max-width:440px;margin-top:30px}.steps{border-top:1px solid var(--line)}.step{border-bottom:1px solid var(--line);grid-template-columns:60px 1fr;align-content:center;column-gap:32px;min-height:190px;padding:34px 0;display:grid}.step>span{font:italic 20px/1 var(--serif);color:var(--plum);grid-row:1/3}.step h3{margin:0 0 12px;font-size:30px}.step p{color:#6b6062;max-width:480px;margin:0}.proof{background:var(--ink);color:var(--paper);grid-template-columns:58% 42%;min-height:720px;display:grid}.proof-copy{flex-direction:column;justify-content:center;padding:clamp(70px,9vw,145px);display:flex}.proof blockquote{letter-spacing:-.035em;max-width:750px;margin:16px 0 38px;font-size:clamp(42px,4.3vw,68px);line-height:1.03}.proof-tags{flex-wrap:wrap;gap:8px;margin-bottom:44px;display:flex}.proof-tags span{letter-spacing:.12em;text-transform:uppercase;border:1px solid #ffffff3d;border-radius:999px;padding:8px 14px;font-size:12px}.light-link{color:var(--paper);border-color:#ffffff80;align-self:flex-start}.proof-image{min-height:680px;overflow:hidden}.proof-image img{filter:saturate(.75);height:100%;transition:transform 1s}.proof-image:hover img{transform:scale(1.025)}.faq{grid-template-columns:.78fr 1.22fr;gap:clamp(70px,10vw,170px);display:grid}.section-head.compact{align-self:start;padding:0;display:block;position:sticky;top:120px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;min-height:108px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:55px 1fr 24px;align-items:center;padding:0;display:grid}.faq-item button span{color:var(--plum);font:italic 17px/1 var(--serif)}.faq-item button b{font:23px/1.2 var(--serif)}.faq-item button i{font-size:28px;font-style:normal;font-weight:200;transition:transform .3s}.faq-item.active button i{transform:rotate(45deg)}.faq-answer{grid-template-rows:0fr;transition:grid-template-rows .35s;display:grid}.faq-answer p{color:#6b6062;min-height:0;margin:0 55px;overflow:hidden}.faq-item.active .faq-answer{grid-template-rows:1fr}.faq-item.active .faq-answer p{margin-bottom:30px}.contact{background:var(--rose);border-top:1px solid var(--ink);grid-template-columns:1fr 1fr;display:grid}.contact-intro{border-right:1px solid #251f2066;padding:clamp(70px,8vw,130px)}.contact-intro .eyebrow{color:var(--ink)}.contact-intro h2{letter-spacing:-.05em;margin:0;font-size:clamp(52px,6vw,90px);line-height:.88}.contact-intro h2 em{color:var(--plum)}.contact-intro>p:not(.eyebrow){max-width:520px;margin:32px 0 56px}.contact-details{border-top:1px solid #251f2059}.contact-details a{font-family:var(--serif);border-bottom:1px solid #251f2059;grid-template-columns:120px 1fr;padding:18px 0;font-size:18px;display:grid}.contact-details small{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;font-size:12px}.contact-form-wrap{background:var(--paper);align-items:center;padding:clamp(70px,8vw,130px);display:grid}.contact-form{grid-template-columns:1fr 1fr;gap:26px 22px;display:grid}.contact-form label{flex-direction:column;gap:9px;display:flex}.contact-form label:nth-child(4),.contact-form .check,.contact-form .submit{grid-column:1/-1}.contact-form label>span{letter-spacing:.13em;text-transform:uppercase;font-size:12px}.contact-form input,.contact-form select,.contact-form textarea{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;outline:none;width:100%;padding:12px 0}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--plum)}.contact-form textarea{resize:vertical}.contact-form .check{flex-direction:row;align-items:center;gap:10px;display:flex}.contact-form .check input{width:17px;height:17px;accent-color:var(--plum)}.contact-form .check span{letter-spacing:0;text-transform:none;font-size:12px}.submit{width:100%}.success{text-align:center;max-width:480px;margin:auto}.success .spark{color:var(--plum);width:56px;height:56px}.success h3{margin:20px 0 12px;font-size:42px}.success p{color:#6b6062}.success .text-link{cursor:pointer;background:0 0;margin-top:20px}footer{background:var(--plum-deep);min-height:190px;color:var(--paper);grid-template-columns:1fr 1fr auto;align-items:center;gap:24px;padding:40px clamp(24px,7vw,120px);display:grid}.footer-brand{align-items:center;gap:12px;display:flex}.footer-brand .brand-mark{border-color:var(--paper)}.footer-brand p{margin:0}footer>p{color:#ffffff94;font-size:13px}.footer-links{gap:22px;font-size:12px;display:flex}footer>small{color:#ffffff73;border-top:1px solid #ffffff26;grid-column:1/-1;padding-top:22px;font-size:12px}.reveal{opacity:0;transition:opacity .75s,transform .75s cubic-bezier(.2,.7,.2,1);transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.legal-page{background:var(--cream);min-height:100vh;padding:90px clamp(24px,8vw,140px)}.legal-page .brand{margin-bottom:80px}.legal-copy{max-width:760px}.legal-copy h1{margin-bottom:44px;font-size:clamp(54px,8vw,96px)}.legal-copy h2{margin-top:40px;font-size:28px}.legal-copy .notice{border:1px solid var(--line);background:var(--paper);padding:18px}.legal-copy a{text-decoration:underline}@media (width<=1050px){.site-header{background:var(--cream);-webkit-backdrop-filter:none;backdrop-filter:none;grid-template-columns:1fr auto}.nav{background:var(--cream);font:38px/1.2 var(--serif);flex-direction:column;align-items:flex-start;padding:54px 28px;transition:transform .4s;position:fixed;inset:88px 0 0;transform:translate(100%)}.nav.is-open{transform:translate(0)}.header-cta{display:none}.menu-toggle{justify-self:end;width:44px;height:44px;display:block}.menu-toggle.active span:first-child{transform:translateY(3.5px)rotate(45deg)}.menu-toggle.active span:last-child{transform:translateY(-3.5px)rotate(-45deg)}.treatment-card>div{grid-template-columns:.8fr 1.2fr}.treatment-card small{grid-column:1/-1}.studio-copy{padding:70px}.experience,.faq{gap:70px}.proof-copy{padding:70px}.contact-intro,.contact-form-wrap{padding:70px 50px}}@media (width<=900px){.site-header{height:76px;padding:0 20px}.nav{inset:76px 0 0}.hero{flex-direction:column;min-height:auto;display:flex}.hero-copy{padding:72px clamp(22px,7vw,54px) 52px}h1{font-size:clamp(58px,14vw,88px)}.hero-lead{font-size:17px}.hero-visual{min-height:0;padding:0 clamp(20px,5vw,42px) 54px}.hero-image-wrap{aspect-ratio:4/5;min-height:0}.hero-note{width:126px;height:126px;bottom:22px;left:auto;right:8px}.scroll-note{display:none}.trust-bar{grid-template-columns:1fr;padding:0 clamp(22px,6vw,50px)}.trust-bar>div{border-bottom:1px solid #251f2059;border-right:0;min-height:98px;padding:22px 0}.trust-bar>div:last-child{border-bottom:0}.section{padding:92px clamp(22px,6vw,50px)}.section-head{padding-bottom:42px;display:block}.section-head h2,.experience h2,.faq h2{font-size:clamp(48px,11vw,70px)}.section-head>p:last-child{margin-top:25px}.treatment-card{grid-template-columns:42px minmax(0,1fr) 50px;gap:16px;min-height:0;padding:30px 0}.treatment-card>div{display:block}.treatment-card h3{font-size:34px}.treatment-card p{margin:14px 0}.treatment-card>a{width:46px;height:46px}.treatment-card:hover{padding:30px 0}.studio{flex-direction:column;display:flex}.studio-image{aspect-ratio:4/5;min-height:0}.studio-copy{padding:82px clamp(22px,6vw,50px) 92px}.studio-values>div{grid-template-columns:1fr;gap:5px}.experience{display:block}.experience-copy{margin-bottom:56px;position:static}.step{grid-template-columns:42px 1fr;column-gap:18px}.proof{flex-direction:column;display:flex}.proof-copy{padding:82px clamp(22px,6vw,50px)}.proof blockquote{font-size:clamp(40px,9vw,58px)}.proof-image{aspect-ratio:1;order:-1;min-height:0}.faq{display:block}.section-head.compact{margin-bottom:54px;position:static}.faq-item button{grid-template-columns:38px 1fr 20px;min-height:100px}.faq-item button b{font-size:20px}.faq-answer p{margin-left:38px;margin-right:20px}.contact{flex-direction:column;display:flex}.contact-intro{border-bottom:1px solid #251f2066;border-right:0;padding:82px clamp(22px,6vw,50px)}.contact-details a{overflow-wrap:anywhere;grid-template-columns:90px 1fr;font-size:16px}.contact-form-wrap{padding:74px clamp(22px,6vw,50px)}.contact-form{grid-template-columns:1fr}.contact-form label{grid-column:1!important}.contact-form input,.contact-form select{min-height:48px}footer{grid-template-columns:1fr;padding:54px clamp(22px,6vw,50px)}footer>small{grid-column:1}}@media (width<=520px){.site-header{padding:0 16px}.brand{gap:9px}.brand-mark{width:36px;height:36px;font-size:20px}.brand b{font-size:17px}.brand small{letter-spacing:.16em;font-size:10px}.nav{gap:24px;padding:42px 22px;font-size:34px}.hero-copy{padding:58px 20px 42px}.eyebrow{letter-spacing:.11em;margin-bottom:20px;font-size:12px}h1{font-size:clamp(54px,17vw,72px);line-height:.87}.hero-lead{margin:28px 0 26px}.hero-actions{align-items:stretch;gap:18px}.hero-actions .btn{width:100%}.hero-actions .text-link{width:max-content}.hero-visual{padding:0 16px 48px}.hero-note{width:114px;height:114px;bottom:16px;right:2px}.hero-note small{display:none}.image-caption{gap:14px;padding:14px 16px;font-size:11px;right:0}.trust-bar{padding:0 20px}.section{padding:76px 20px}.section-head h2,.experience h2,.faq h2{font-size:clamp(44px,13vw,58px)}.treatment-card{grid-template-columns:32px minmax(0,1fr);gap:12px}.treatment-card h3{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;padding-right:0;font-size:clamp(28px,8.2vw,35px)}.treatment-card>a{grid-column:2;margin-top:12px}.treatment-card small{white-space:normal}.studio-copy,.proof-copy,.contact-intro,.contact-form-wrap{padding-left:20px;padding-right:20px}.studio-copy h2{font-size:clamp(44px,13vw,60px)}.vertical-label{width:34px;font-size:11px}.proof blockquote{font-size:clamp(38px,11vw,48px)}.faq-item button{grid-template-columns:32px minmax(0,1fr) 32px;gap:8px}.faq-item button b{overflow-wrap:anywhere;min-width:0}.faq-item button i{justify-self:center;place-items:center;width:20px;height:20px;line-height:1;display:grid}.faq-answer p{margin-left:32px;margin-right:0}.contact-intro h2{font-size:clamp(48px,14vw,64px)}.contact-details a{flex-direction:column;gap:5px;display:flex}.contact-form{gap:22px}footer{padding:48px 20px}.footer-links{flex-wrap:wrap;row-gap:12px}.legal-page{padding:64px 20px}.legal-page .brand{margin-bottom:52px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}}
