:root{--rose:#99566b;--rose-dark:#82445a;--rose-soft:#e6c9d2;--yellow-soft:#e7d69c;--sage-soft:#dce4c8;--lilac-soft:#d9c9df}
.desktop-nav{gap:23px}
.desktop-nav>a[aria-current="page"]{color:var(--rose);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
.mobile-menu nav>a[aria-current="page"]{color:var(--rose);font-weight:700}
@media(min-width:981px) and (max-width:1100px){.desktop-nav{gap:16px}}
.hero-experience{display:inline-flex;align-items:center;gap:13px;margin-top:28px;padding:10px 20px 11px;background:#fff9efc9;border:1px solid #d4a8b7;border-radius:45px;color:var(--rose)}
.hero-experience>strong{font:46px/1 Editorial,Georgia,serif;letter-spacing:-.055em}
.hero-experience>span{font-size:11px;line-height:1.5;letter-spacing:.025em}
.testimonials-section{background:#fcf8f1}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.testimonial-card{margin:0;padding:29px 30px 27px;display:flex;flex-direction:column;border:1px solid #d6bdc49c;border-radius:31px;min-width:0}
.testimonial-color-0{background:#f0dfe5}
.testimonial-color-1{background:#f1e5bf}
.testimonial-color-2{background:#e5e9d6}
.testimonial-mark{font:64px/.85 Editorial,Georgia,serif;color:var(--rose);height:47px;display:block}
.testimonial-card blockquote{margin:0;flex:1}
.testimonial-card blockquote p{font:25px/1.45 Editorial,Georgia,serif;color:#43564d;margin:0;overflow-wrap:anywhere}
.testimonial-card figcaption{border-top:1px solid #9e7b8552;padding-top:20px;margin-top:29px}
.testimonial-author{display:flex;flex-direction:column;gap:7px}
.testimonial-author>span{font-size:13px;font-weight:600;color:#43564d}
.testimonial-author>time{font-size:11px;color:#5f6b56}
.testimonial-source{display:flex;align-items:center;gap:5px;font-size:10px;line-height:1.7;margin-top:17px;color:#82445a;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.testimonials-section .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.testimonials-grid{gap:18px}.testimonial-card{padding:25px 22px}.testimonial-card blockquote p{font-size:22px}}
@media(max-width:720px){.testimonials-grid{grid-template-columns:1fr;gap:20px}.testimonial-card{padding:28px 30px}.testimonial-card blockquote p{font-size:26px}.testimonial-card figcaption{margin-top:24px}.hero-experience>strong{font-size:43px}}
.site-footer .footer-bottom{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:18px 28px}
.site-footer .footer-bottom>.footer-admin{margin-left:0;justify-self:start}
.footer-credit{display:flex;align-items:center;justify-self:end;gap:12px;white-space:nowrap}
.footer-credit>span{font-size:9px}
.footer-credit>img{display:block;width:92px;height:auto;flex-shrink:0}
@media(max-width:600px){.site-footer .footer-bottom{grid-template-columns:1fr auto;gap:14px 18px}.footer-admin{grid-column:1;grid-row:2}.footer-credit{grid-column:2;grid-row:1 / span 2;align-self:end;flex-direction:column;align-items:flex-end;gap:7px}.footer-credit>span{font-size:8px}.footer-credit>img{width:82px}}
.hero{background:linear-gradient(125deg,#fffaf3 15%,#f7eed7 65%,#ecd1d9)}
.hero h1 em,.offer-heading>span:last-child,.portrait-handwritten,.portrait-signature,.studio-portrait figcaption>em,.reading-portrait figcaption,.approach-note,.approach-note em,.approach-invitation h2 em,.help-number,.step-number,.faq-layout h2 em,.upcoming-art em,.footer-top p,.tiny-flower{color:var(--rose)}
.button:not(.outline):not(.secondary),.button.mint{background:var(--rose);color:#fffaf4;border-color:var(--rose)}
.button:not(.outline):not(.secondary):hover,.button.mint:hover{background:var(--rose-dark)}
.button.outline{border-color:#b67d91;color:var(--rose);background:transparent}
.button.outline:hover{background:#f0dce2}
.portrait-source{object-fit:contain;object-position:center bottom;transform:scale(.96);mask-image:linear-gradient(90deg,transparent 10%,#000 20%,#000 80%,transparent 90%),linear-gradient(180deg,transparent,#000 9%,#000 96%,transparent)}
.portrait-wash{background:#ddc3cd}
.portrait-handwritten{background:#fff7eee8}
.floating-pill{border-color:#d9b8c4}
.hero-note{color:var(--rose)}
.audience-nav>a{border-color:#cfabb7;background:#fff9ef}
.audience-nav>a:hover{background:#ecd5dc;border-color:#b77d92}
.offer-section{background:radial-gradient(ellipse at 95% 0%,#e7d69c80,transparent 48%),#fffaf2}
.service-card.color-0{background:#dce5c9}
.service-card.color-1{background:#dfc9df}
.service-card.color-2{background:#e9c9d1}
.service-card.color-3{background:#e7d69c}
.service-illustration,.service-illustration.illustration-1,.service-illustration.illustration-2,.service-illustration.illustration-3{color:var(--rose)}
.service-top .circle-arrow{color:var(--rose);border-color:#ac748b75;background:#fff9efad}
.service-card .text-link{color:var(--rose);border-color:#a96d8550}
.reading-portrait{margin:0;position:relative;max-width:470px;width:100%;justify-self:center;padding:0 8px 35px}
.reading-portrait:before{content:'';position:absolute;inset:15px -8px 65px -8px;background:#e7d69c;border-radius:45% 48% 30% 30%;transform:rotate(5deg);z-index:-1}
.reading-portrait{isolation:isolate}
.reading-portrait img{width:100%;height:530px;object-fit:cover;object-position:50% 5%;border:7px solid #fffaf1;border-radius:43% 46% 28% 31% / 34% 39% 23% 25%;box-shadow:0 15px 40px #7049510c}
.reading-portrait figcaption{text-align:center;font:25px/1.3 Editorial,Georgia,serif;margin-top:19px}
.approach-invitation{background:#ead1d9}
.consultation-cta{background:#e5d59e}
.approach-section{background:linear-gradient(135deg,#f9f2e6,#f0dce2);border-radius:0}
.approach-grid .large-text{font-size:20px;line-height:1.65;max-width:470px;margin-bottom:30px}
.approach-painting:before{border-color:#cfa9b6}
.approach-orbit{border-color:#ba8a9b}
.approach-orbit>span{background:var(--rose);width:12px;height:12px;left:-6px;top:calc(50% - 6px);box-shadow:0 0 0 5px #f4e5dfba}
.approach-note{background:#f9f1e6e6}
.approach-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:65px}
.principle-card{padding:30px 30px 33px;border-radius:34px;background:#e5c5cf}
.principle-card.principle-1{background:#e6d493}
.principle-card.principle-2{background:#d6e0c0}
.care-icon,.step-icon{display:flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;background:#fff9ef90;color:var(--rose);margin-bottom:25px}
.line-icon{width:33px;height:33px;flex-shrink:0}
.principle-card h2{font-size:29px;line-height:1.2;margin-bottom:17px;letter-spacing:-.03em}
.principle-card p{font-size:15px;line-height:1.8;color:#53604e;margin:0}
.approach-more{margin-top:30px}
.approach-more details{border-bottom:1px solid #cda7b5}
.approach-more summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:66px;padding:18px 2px;font-size:14px;color:var(--rose)}
.approach-more summary::-webkit-details-marker{display:none}
.approach-more summary>span{font-size:23px;transition:transform .2s}
.approach-more details[open] summary>span{transform:rotate(45deg)}
.approach-more details>p{max-width:860px;font-size:16px;line-height:1.9;color:#53604e;padding-bottom:15px}
.help-section{background:#fff9ee}
.help-grid{gap:20px;margin-top:42px}
.help-grid .help-item{border:0;background:#ecd3da;padding:27px 23px 30px;border-radius:32px}
.help-grid .help-item:nth-child(2n){background:#eadba7}
.help-grid .help-item:nth-child(3n){background:#dfe5ce}
.help-item h3{font-size:27px;color:#43564f}
.help-item p{font-size:14px;color:#53604e}
.steps-section{background:#eadba7}
.steps-grid{gap:24px}
.steps-grid .step{border:0;border-radius:32px;padding:30px;background:#fff8ed;min-height:0}
.step-icon{background:#ead0d9}
.steps-grid .step h3{font-size:28px;color:#43564f}
.steps-grid .step p{font-size:15px;line-height:1.8;color:#53604e}
.faq-section{background:#f3e4e5}
.faq-list,.faq-list details{border-color:#cfadba}
.faq-list summary span{color:var(--rose)}
.contact-section{background:linear-gradient(120deg,#eed5dd,#f4e8c5);padding:70px 0 75px}
.contact-section:before{border-color:#cba1b1;box-shadow:0 0 0 30px #edd7dd,0 0 0 31px #cba1b1,0 0 0 65px #edd7dd,0 0 0 66px #cba1b1;opacity:.45}
.contact-layout{grid-template-columns:1fr 1fr;gap:85px;align-items:center}
.contact-layout :is(h1,h2){color:#4e6553}
.contact-phone,.contact-email{color:var(--rose)}
.contact-email{border-color:#b78094;font-size:13px}
.contact-write-link{margin-top:28px}
.contact-photo{position:relative;margin:0;width:100%;max-width:480px;justify-self:center}
.contact-photo>img{width:100%;height:580px;object-fit:cover;object-position:50% 2%;border:7px solid #fff9ee;border-radius:44% 46% 29% 30% / 33% 35% 24% 23%;box-shadow:0 14px 40px #99566b10}
.contact-photo figcaption{font:26px/1.3 Editorial,Georgia,serif;color:var(--rose);text-align:center;margin-top:18px}
.contact-message-section{background:#fffaf1;scroll-margin-top:30px}
.contact-message-grid{display:grid;grid-template-columns:.85fr 1.45fr;gap:60px;align-items:start}
.contact-address{padding:36px;border-radius:35px;background:#e8d9a4}
.contact-address>img{width:60px;height:75px;object-fit:contain;margin-bottom:30px}
.contact-address h2{font-size:35px;line-height:1.15;margin-bottom:23px}
.contact-address>p:not(.eyebrow){font-size:16px;line-height:1.8}
.contact-address .text-link{color:var(--rose);font-size:13px}
.visit-note{margin-top:35px;padding-top:30px;border-top:1px solid #ba9f6e80}
.visit-note h3{font-size:26px;line-height:1.25;margin-bottom:15px}
.visit-note p{font-size:14px;line-height:1.85;margin:0;color:#53604e}
.message-form{padding:38px 40px 40px;background:#f8ebec;border:1px solid #d8b5c0;border-radius:35px}
.message-form h2{font-size:47px;margin-bottom:20px}
.message-intro{font-size:15px;line-height:1.8;color:#53604e;margin-bottom:28px}
.message-field{display:block;margin-bottom:23px;min-width:0}
.message-field>span{display:block;font-size:13px;margin-bottom:9px;color:#53604e}
.message-field input,.message-field textarea{width:100%;max-width:100%;min-height:52px;padding:13px 15px;border:1px solid #bb8b9c;border-radius:12px;background:#fffaf4;font-size:16px;line-height:1.6;color:#43564f;resize:vertical}
.message-field textarea{min-height:165px}
.message-field textarea::placeholder{color:#74786c;font-size:14px}
.message-field input:focus,.message-field textarea:focus{outline:2px solid #99566b;outline-offset:3px}
.message-note{font-size:12px;line-height:1.7;color:#596551;margin:18px 0 0;max-width:420px}
.message-error{font-size:14px;color:#82445a;margin:0 0 20px}
.message-ready{margin-top:27px;border-top:1px solid #c596a8;padding-top:26px}
.message-ready h3{font-size:28px;margin-bottom:15px}
.message-ready p{font-size:14px;line-height:1.8;color:#53604e}
.message-ready>div{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.message-ready .button{font-size:12px;padding:15px 19px;white-space:normal}
.message-ready button.text-link{background:none;font-size:12px;color:var(--rose);padding:8px 0}
.message-ready small{display:block;margin-top:20px;font-size:11px;line-height:1.8;overflow-wrap:anywhere}
.message-ready small>a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.contact-layout{gap:50px}.contact-photo>img{height:540px}.contact-message-grid{gap:35px}.message-form{padding:33px}.contact-address{padding:30px}.help-grid{gap:16px}.help-grid .help-item{padding:25px 20px}.help-item h3{font-size:25px}}
@media(max-width:980px){.contact-layout{gap:35px}.contact-photo>img{height:500px}.contact-layout :is(h1,h2){font-size:60px}.contact-phone{font-size:33px}.contact-email{font-size:11px}.contact-message-grid{grid-template-columns:.8fr 1.2fr;gap:25px}.contact-address{padding:28px 23px}.contact-address h2{font-size:30px}.message-form{padding:30px 25px}.message-form h2{font-size:40px}.message-form .form-two{grid-template-columns:1fr;gap:0}.help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.principle-card{padding:27px 23px}.principle-card h2{font-size:27px}.reading-portrait img{height:490px}}
@media(max-width:720px){.contact-layout{grid-template-columns:1fr;gap:45px}.contact-layout :is(h1,h2){font-size:61px}.contact-photo{max-width:420px}.contact-photo>img{height:540px}.contact-email{font-size:13px}.contact-phone{font-size:36px}.contact-message-grid{grid-template-columns:1fr;gap:35px}.contact-address{padding:32px}.contact-address h2{font-size:34px}.contact-address>img{float:right;margin-left:20px}.visit-note{margin-top:26px;padding-top:24px}.message-form{padding:32px}.message-form h2{font-size:43px}.approach-principles{grid-template-columns:1fr;gap:20px;margin-top:55px}.principle-card{display:grid;grid-template-columns:62px 1fr;gap:8px 22px;padding:26px}.principle-card .care-icon{grid-row:1 / 3;margin-bottom:0}.principle-card h2{font-size:28px;margin:0}.principle-card p{font-size:15px}.approach-grid .large-text{font-size:18px}.steps-grid{grid-template-columns:1fr}.steps-grid .step{display:grid;grid-template-columns:62px 1fr;gap:8px 22px;padding:27px}.steps-grid .step-icon{grid-row:1 / 3;margin:0}.steps-grid .step h3{margin:0;font-size:28px}.steps-grid .step p{font-size:15px}.reading-portrait img{height:520px}.reading-portrait{max-width:430px}.contact-section{padding-top:50px}.hero-actions .button{font-size:12px}}
@media(max-width:440px){.contact-layout :is(h1,h2){font-size:54px}.contact-photo>img{height:460px}.contact-phone{font-size:32px}.contact-email{font-size:12px;overflow-wrap:anywhere}.message-form{padding:28px 22px;border-radius:29px}.message-form h2{font-size:39px}.message-form .eyebrow{font-size:8px}.message-form .button{white-space:normal;font-size:12px;padding:16px 20px}.contact-address{padding:28px}.contact-address h2{font-size:31px}.help-grid{grid-template-columns:1fr}.help-grid .help-item{padding:28px}.help-item h3{font-size:29px}.help-item p{font-size:15px}.care-icon{margin-bottom:20px}.principle-card{grid-template-columns:48px 1fr;gap:8px 17px;padding:25px 22px}.principle-card .care-icon,.steps-grid .step-icon{width:48px;height:48px}.line-icon{width:29px;height:29px}.principle-card h2{font-size:26px}.steps-grid .step{grid-template-columns:48px 1fr;gap:8px 17px;padding:26px 22px}.steps-grid .step h3{font-size:26px}.reading-portrait img{height:460px}.reading-portrait figcaption{font-size:23px}}
