:root{--ink:#352a2b;--wine:#713d47;--rose:#b6727c;--blush:#f4e8e6;--paper:#fffaf8;--white:#fff;--line:#decac7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.13;letter-spacing:-.045em}h1 em,h2 em{color:var(--rose);font-weight:400}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,a{transition:background .2s,color .2s,transform .2s}a:focus-visible,summary:focus-visible{outline:3px solid #c17853;outline-offset:4px}.site-header{height:86px;display:flex;align-items:center;gap:40px;padding:12px max(4vw,32px);background:var(--paper);border-bottom:1px solid #f0e4e1;position:relative;z-index:10}.brand{width:132px;height:60px;overflow:hidden;display:flex;align-items:center}.brand img{width:132px;height:132px;object-fit:cover;mix-blend-mode:multiply}.site-header nav{display:flex;gap:34px;margin:auto;font-size:14px;font-weight:600}.site-header nav a:hover,.text-link:hover,.inline-cta:hover{color:var(--rose)}.header-cta{background:var(--wine);color:white;padding:11px 22px;border-radius:100px;font-size:14px;font-weight:700;white-space:nowrap}.header-cta:hover,.button-primary:hover{background:#522831;transform:translateY(-2px)}.hero{min-height:650px;display:grid;grid-template-columns:55% 45%;background:linear-gradient(130deg,#fffaf8 48%,#f6ebe9)}.hero-copy{padding:88px 5vw 62px max(6vw,50px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.19em;color:var(--rose);text-transform:uppercase;margin-bottom:28px}.eyebrow-line{display:inline-block;width:28px;height:1px;background:var(--rose);vertical-align:middle;margin-right:12px}.hero h1{font-size:clamp(55px,5.4vw,88px);max-width:750px;margin-bottom:24px}.hero-description{font-size:18px;line-height:1.7;color:#655455;max-width:590px;margin-bottom:34px}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:54px;padding:14px 24px;border-radius:3px;font-size:15px;font-weight:700;line-height:1.25}.button span,.inline-cta span,.text-link span,.reviews-link span{font-size:20px;line-height:1}.button-primary{background:var(--wine);color:#fff}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid var(--wine);padding-bottom:5px;display:inline-flex;gap:16px;align-items:center}.hero-proof{display:flex;align-items:center;gap:10px;margin-top:50px;font-size:14px}.hero-proof span:last-child{color:#7c6e6b}.stars{color:#b57254;letter-spacing:.12em}.hero-visual{position:relative;min-height:650px;overflow:hidden}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(113,61,71,.07),transparent 35%)}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center 60%;position:absolute}.image-tag{position:absolute;bottom:30px;left:28px;z-index:1;background:#fffaf6e8;padding:13px 18px;color:var(--wine);font-family:'Playfair Display',Georgia,serif;font-size:17px}.ribbon{background:var(--wine);color:#fff7f2;overflow:hidden;padding:14px 0;white-space:nowrap;font-size:12px;letter-spacing:.2em;font-weight:700}.ribbon div{width:max-content;animation:marquee 26s linear infinite}.ribbon span{color:#dba49f;padding:0 35px}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:104px max(6vw,40px)}.section-heading{max-width:735px}.section-heading h2,.studio-copy h2,.professional h2,.reviews h2,.faq h2{font-size:clamp(40px,4.25vw,66px);margin-bottom:21px}.section-heading>p:last-child{color:#655455;font-size:18px;max-width:650px}.benefits{background:var(--paper)}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:55px}.benefit-card{border:1px solid var(--line);padding:33px;min-height:295px;background:#fffdfb;position:relative;transition:transform .25s,box-shadow .25s}.benefit-card:hover{transform:translateY(-5px);box-shadow:0 18px 50px #713d4712}.benefit-number{font-size:13px;color:#a78e8b;font-weight:700}.benefit-icon{font-family:Georgia,serif;font-size:44px;color:var(--rose);height:75px;display:flex;align-items:center}.benefit-card h3{font-family:'Playfair Display',Georgia,serif;font-size:28px;font-weight:500;margin-bottom:10px}.benefit-card p{color:#716361;line-height:1.65;margin:0}.section-action{margin-top:34px}.button-outline{border:1px solid var(--wine);color:var(--wine)}.button-outline:hover{background:var(--wine);color:#fff}.studio-section{display:grid;grid-template-columns:49% 51%;background:#eddddd}.studio-image{min-height:660px;overflow:hidden}.studio-image img{width:100%;height:100%;object-fit:cover;object-position:center 58%}.studio-copy{padding:85px 9vw 80px 8vw;align-self:center}.studio-copy>p:not(.eyebrow){font-size:17px;color:#614c4e;margin-bottom:35px}.studio-detail{border-top:1px solid #d5bdbb;padding:20px 0;display:flex;gap:23px}.studio-detail span{font-size:13px;color:var(--rose);font-weight:700}.studio-detail strong{font-size:17px}.studio-detail p{margin:4px 0 0;color:#69595a}.inline-cta{display:inline-flex;align-items:center;gap:70px;color:var(--wine);border-bottom:1px solid var(--wine);padding-bottom:7px;font-weight:700;margin-top:20px}.professional{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;background:var(--paper)}.professional-copy{max-width:550px}.professional-copy>p:not(.eyebrow):not(.signature){font-size:18px;color:#635657;margin-bottom:20px}.professional-image{height:590px;overflow:hidden;background:#f3eded}.professional-image img{width:100%;height:100%;object-fit:cover;object-position:61% center}.signature{font-family:'Playfair Display',Georgia,serif;color:var(--rose);font-style:italic;font-size:24px;margin:20px 0 30px}.reviews{background:#f2e8e4;padding:100px max(6vw,40px);display:grid;grid-template-columns:1fr 1fr;gap:9vw}.reviews-intro h2{font-size:clamp(40px,3.7vw,60px)}.rating{display:flex;align-items:center;gap:16px;margin-top:40px}.rating-number{font:500 70px/1 'Playfair Display',Georgia,serif;color:var(--wine)}.rating small{display:block;color:#6f6060;font-size:13px;margin-top:4px}.review-cards{display:grid;gap:15px;align-content:center}.review-cards blockquote{margin:0;background:#fffaf8;padding:27px 32px;border-left:3px solid var(--rose);font-family:'Playfair Display',Georgia,serif;font-size:22px;line-height:1.45}.review-cards cite{display:block;font:600 12px 'DM Sans',Arial,sans-serif;letter-spacing:.12em;color:var(--rose);text-transform:uppercase;margin-top:15px}.reviews-link{color:var(--wine);font-weight:700;display:inline-flex;justify-content:space-between;border-bottom:1px solid var(--wine);padding-bottom:6px;width:max-content;gap:20px;margin-top:14px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.faq-list details{border-top:1px solid var(--line);padding:17px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-size:18px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:26px;color:var(--rose);font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list p{margin:12px 45px 5px 0;color:#6b5d5d}.final-cta{background:var(--wine);text-align:center;color:white;padding:100px 20px 90px;display:flex;align-items:center;flex-direction:column}.final-cta .eyebrow{color:#e0b6b0;margin-bottom:17px}.final-cta h2{font-size:clamp(42px,5vw,72px);max-width:850px;margin-bottom:20px}.final-cta>p:not(.eyebrow){font-size:18px;color:#f1dedd;max-width:520px}.button-light{background:#fffaf8;color:var(--wine);margin:20px 0 14px}.button-light:hover{background:#f0dcda;transform:translateY(-2px)}.final-cta small{color:#edd2d0;font-size:13px}footer{background:#33272a;color:#f8efeb;padding:65px max(6vw,40px) 20px;display:grid;grid-template-columns:1.5fr 1fr .7fr;gap:55px;font-size:14px}footer .footer-brand img{width:125px;height:100px;object-fit:cover;mix-blend-mode:screen;filter:grayscale(1) brightness(1.9)}footer p{color:#d9c7c5;line-height:1.7}footer strong{display:block;margin-bottom:15px}footer a{display:block;color:#f1d6d1;margin-bottom:9px}footer a:hover{text-decoration:underline}.footer-bottom{grid-column:1/-1;border-top:1px solid #665054;padding-top:18px;color:#c9b6b4;font-size:12px}.mobile-cta{display:none}@media(max-width:900px){.site-header{padding:10px 22px}.site-header nav{gap:16px}.hero{grid-template-columns:1fr 43%}.hero-copy{padding:60px 30px}.hero h1{font-size:clamp(48px,6vw,70px)}.section{padding:75px 28px}.studio-copy{padding:65px 35px}.reviews{padding:75px 28px;gap:40px}}@media(max-width:700px){body{padding-bottom:62px}.site-header{height:72px}.site-header nav,.header-cta{display:none}.brand{height:54px;width:116px}.brand img{width:116px;height:116px}.hero{display:flex;flex-direction:column}.hero-copy{padding:54px 24px 35px}.eyebrow{font-size:11px;line-height:1.5;margin-bottom:20px}.hero h1{font-size:clamp(49px,11.5vw,69px);margin-bottom:18px}.hero-description{font-size:16px;margin-bottom:25px}.hero-actions{gap:20px}.hero-proof{margin-top:35px}.hero-visual{min-height:390px}.hero-visual img{object-position:center 52%}.image-tag{font-size:14px;bottom:17px;left:17px}.section{padding:68px 22px}.section-heading h2,.studio-copy h2,.professional h2,.reviews h2,.faq h2{font-size:clamp(39px,10vw,54px)}.section-heading>p:last-child{font-size:16px}.benefit-grid{grid-template-columns:1fr;gap:11px;margin-top:30px}.benefit-card{min-height:unset;padding:23px}.benefit-icon{height:65px}.studio-section{display:flex;flex-direction:column}.studio-image{min-height:420px;height:420px}.studio-copy{padding:66px 24px}.studio-copy>p:not(.eyebrow){font-size:16px}.professional{display:flex;flex-direction:column;gap:36px}.professional-copy>p:not(.eyebrow):not(.signature){font-size:16px}.professional-image{height:370px;width:100%}.reviews{display:block;padding:68px 22px}.reviews-intro h2{font-size:43px}.rating{margin:25px 0 35px}.review-cards blockquote{font-size:19px;padding:22px}.faq{display:block}.faq-list{margin-top:35px}.faq-list summary{font-size:16px}.final-cta{padding:75px 22px}.final-cta h2{font-size:44px}.final-cta>p:not(.eyebrow){font-size:16px}footer{padding:55px 22px 25px;grid-template-columns:1fr;gap:24px}.footer-bottom{grid-column:1}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--wine);color:white;min-height:62px;display:flex;justify-content:center;align-items:center;gap:16px;font-size:15px;font-weight:700;box-shadow:0 -7px 24px #352a2b2b}.mobile-cta span{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ribbon div{animation:none}*{transition:none!important}}
:root{--shine:rgba(255,255,255,.36)}
.brand{width:150px;height:66px;overflow:visible}
.brand img{width:150px;height:66px;object-fit:contain;mix-blend-mode:normal}
.header-cta,.button{border-radius:9px;position:relative;overflow:hidden;isolation:isolate}
.header-cta::after,.button::after,.mobile-cta::after{content:"";position:absolute;top:-50%;left:-70%;width:42%;height:200%;transform:skewX(-24deg);background:linear-gradient(90deg,transparent,var(--shine),transparent);pointer-events:none;animation:button-shine 3s ease-in-out infinite}
.button-outline{--shine:rgba(183,114,124,.23)}
.button-light{--shine:rgba(183,114,124,.28)}
@keyframes button-shine{0%{left:-70%}27%,100%{left:130%}}
.ribbon .ribbon-track{display:flex;width:max-content;animation:marquee 22s linear infinite}
.ribbon .ribbon-copy{flex:0 0 auto;width:max-content;animation:none;padding-right:35px}
.pain-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8vw;background:#f6efed}
.pain-intro{position:sticky;top:40px;align-self:start}
.pain-intro h2{font-size:clamp(42px,4.5vw,68px);max-width:600px}
.pain-intro>p:not(.eyebrow){font-size:18px;color:#655455;max-width:520px;margin-bottom:28px}
.pain-list{border-top:1px solid var(--line)}
.pain-list details{border-bottom:1px solid var(--line);padding:0}
.pain-list summary{display:grid;grid-template-columns:35px 1fr 24px;gap:12px;align-items:center;list-style:none;cursor:pointer;padding:24px 0;font-size:19px;font-weight:700;line-height:1.35}
.pain-list summary::-webkit-details-marker{display:none}
.pain-list summary::after{content:"+";font-size:27px;line-height:1;font-weight:400;color:var(--rose);text-align:right}
.pain-list details[open] summary::after{content:"−"}
.pain-index{color:var(--rose);font-size:13px;letter-spacing:.1em}
.pain-list details p{margin:0 38px 25px 47px;max-width:620px;color:#615355;font-size:16px;line-height:1.75}
.pain-note{font-size:14px;color:#806c6d;margin:20px 0 0}
footer .footer-brand img{width:140px;height:140px;object-fit:contain;mix-blend-mode:normal;filter:none}
@media(max-width:900px){.pain-section{gap:38px}.pain-intro h2{font-size:45px}.pain-list summary{font-size:17px}}
@media(max-width:700px){.brand{width:118px;height:56px}.brand img{width:118px;height:56px}.pain-section{display:block}.pain-intro{position:static}.pain-intro h2{font-size:43px}.pain-intro>p:not(.eyebrow){font-size:16px}.pain-intro .button{margin-bottom:40px}.pain-list summary{grid-template-columns:28px 1fr 20px;gap:8px;padding:21px 0;font-size:17px}.pain-list details p{margin:0 20px 22px 36px}.mobile-cta{position:fixed;overflow:hidden;isolation:isolate;border-radius:10px 10px 0 0}footer .footer-brand img{width:125px;height:125px}}
@media(prefers-reduced-motion:reduce){.ribbon .ribbon-track,.header-cta::after,.button::after,.mobile-cta::after{animation:none}}
