/* Simply Facials: polished conversion, editorial imagery and motion. */
:root{--petal:#e8e0ce;--wine:#3e3f38;--gold:#b4a882}.button{background:linear-gradient(125deg,#5f5e4e,#3e3f38 60%,#4c4d42);border:1px solid #8b856890;box-shadow:inset 0 1px 0 #ffffff30,0 8px 23px #40413a20;transition:transform .3s,box-shadow .3s,background .3s}.button:hover{background:linear-gradient(125deg,#75735c,#4c4d42);box-shadow:inset 0 1px 0 #ffffff40,0 12px 30px #40413a38;transform:translateY(-4px)}.button:after{background:linear-gradient(90deg,transparent,#fff6,transparent);width:45%;animation:luxuryShine 6.5s 1.5s infinite}.hero-actions .button{animation:ctaEntrance 1.1s .55s both,ctaGlow 6.5s 2s infinite;padding:19px 34px}.hero-actions .quiet-link{border:1px solid #7c796080;border-radius:100px;padding:16px 26px;background:linear-gradient(120deg,#fff6,#ece6d73d);backdrop-filter:blur(5px);transition:transform .3s,background .3s;animation:ctaEntrance 1.1s .75s both}.hero-actions .quiet-link:hover{transform:translateY(-3px);background:#fff9}.hero-photo img{height:calc(100% + 32px);margin-top:-16px}.hero-actions{animation:none}.hero-caption{animation:enter 1s .7s both}.hero-scroll:before{transform-origin:left;animation:lineBreathe 3s ease-in-out infinite}.js-motion .reveal-heading{transform:translateY(24px);filter:blur(3px);transition:opacity .9s,transform .9s,filter .9s}.js-motion .reveal-heading.is-visible{filter:blur(0)}.image-enter{overflow:hidden}.image-enter img{scale:1.045;transition:scale 1.4s cubic-bezier(.2,.65,.2,1)}.image-enter.is-visible img,.is-visible .image-enter img{scale:1}.js-motion .map-enter{clip-path:inset(0 5% 0 5% round 30px);transform:translateY(18px);transition:clip-path 1.1s,transform 1.1s,opacity 1.1s}.js-motion .map-enter.is-visible{clip-path:inset(0 0 0 0 round 12px)}.treatment-choice.reveal{transition:opacity .75s,transform .75s,background .3s}.treatment-tabs button{transition:color .3s,border-color .3s}.treatment-choices .reveal:nth-child(2){transition-delay:.08s}.treatment-choices .reveal:nth-child(3){transition-delay:.16s}.treatment-choices .reveal:nth-child(4){transition-delay:.24s}/* Genuine, newest-first review collection. Four standard / five wide desktop cards. */
.review-section{background:radial-gradient(ellipse at 90% 0,#e6decbaa,transparent 55%),linear-gradient(180deg,#fcf8fb,#f2ede1);padding-bottom:85px}.review-section .section-top{align-items:center}.google-summary{background:#fff8;border:1px solid #dcd1b7;border-radius:100px;padding:17px 24px;gap:16px}.google-summary .google-mark{width:33px;height:33px}.google-summary strong{font-size:16px}.google-summary small{font-size:16px}.review-window{padding-top:8px;cursor:grab;overscroll-behavior-x:contain}.review-window:active{cursor:grabbing}.review-track{padding:12px 3% 25px;gap:18px}.review-card{width:calc((94vw - 54px)/4);max-width:none;min-width:0;min-height:345px;display:flex;flex-direction:column;background:linear-gradient(145deg,#fffcfe,#ede7d9);border:1px solid #d7cbad;border-radius:14px;padding:27px 23px;box-shadow:0 7px 20px #47483f09;position:relative}.review-card:before{content:'';position:absolute;inset:0 22px auto;height:1px;background:linear-gradient(90deg,transparent,#9b9371,transparent)}.review-card-top{display:flex;justify-content:space-between;align-items:center}.review-card-top .google-mark{width:18px;height:18px}.review-card .stars{font-size:16px;letter-spacing:2px}.review-card blockquote{font-size:22px;line-height:1.25;min-height:132px;margin:27px 0 24px;letter-spacing:-.015em}.review-author{margin-top:auto}.review-author .initials{background:linear-gradient(130deg,#d8ccae,#f0eadd);border:1px solid #cbbc93;color:#494a40;width:40px;height:40px}.review-author strong{font-size:16px}.review-author time{display:block;font-size:16px;color:#6b6a56}.review-read{align-self:flex-start;border:0;border-bottom:1px solid #999170;background:none;padding:0 0 3px;margin:20px 0 0 52px;font-size:16px}.review-bottom p{font-size:16px;line-height:1.8}.review-bottom p span{font-size:16px;color:#848065}.text-controls button{border:1px solid #beb088;border-radius:50px;padding:11px 20px;background:#ffffff55;transition:background .3s,transform .3s}.text-controls button:hover{background:#e0d6bf;transform:translateY(-2px)}.review-dialog{width:min(610px,calc(100% - 32px));max-height:85svh;overflow:auto;border-radius:18px;padding:50px;background:linear-gradient(145deg,#fff8fc,#e9e2d1)}.review-dialog blockquote{font:22px/1.4 var(--serif);margin:25px 0}.review-dialog h3{font-size:22px}.review-dialog p{font-size:16px;margin:10px 0 25px}/* Custom, scalable gift-card artwork, not a bitmap mockup. */
.gift-section{background:radial-gradient(ellipse at 80% 30%,#cdbe9780,transparent 60%),linear-gradient(115deg,#f5f1e8,#e4dbc6);overflow:hidden}.gift-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.gift-copy h2{font-size:clamp(33.1px,2.8vw,40.6px)}.gift-copy>p{font-size:16px;max-width:400px;margin:25px 0 30px}.gift-note{display:block;font-size:16px;margin-top:16px;color:#6e6d58}.gift-art{position:relative;display:block;height:390px;perspective:1000px}.gift-envelope{position:absolute;width:88%;height:65%;left:8%;top:22%;background:linear-gradient(145deg,#595a4b,#353631);transform:rotate(7deg);border-radius:6px;box-shadow:0 25px 40px #40413a33;overflow:hidden}.gift-envelope:after{content:'';position:absolute;inset:0;background:linear-gradient(150deg,transparent 49.6%,#948d6d55 50%,transparent 50.5%),linear-gradient(30deg,#4b4c42 49.5%,#a2997680 50%,transparent 50.5%)}.gift-card{position:absolute;left:0;top:8%;width:88%;height:67%;border-radius:8px;transform:rotate(-7deg);background:radial-gradient(ellipse at 100% 0,#847f64,transparent 65%),linear-gradient(130deg,#42433c,#31312d);color:#ede7d9;box-shadow:0 23px 40px #37383344,inset 0 1px 0 #ece5d666;overflow:hidden;transition:transform .7s,box-shadow .7s;padding:30px;display:flex;flex-direction:column;justify-content:space-between}.gift-card:after{content:'';position:absolute;inset:-50% auto -50% -100%;width:45%;background:linear-gradient(90deg,transparent,#ede7d925,transparent);transform:rotate(25deg)}.gift-art.is-visible .gift-card:after{animation:luxuryShine 8s 1s infinite}.gift-art:hover .gift-card{transform:rotate(-3deg) translateY(-10px);box-shadow:0 35px 50px #37383355}.gift-card-border{position:absolute;inset:11px;border:1px solid #b3a78177;border-radius:4px;pointer-events:none}.gift-card-label{font-size:16px;letter-spacing:.19em;color:#d7caab}.gift-card-brand{font:34.9px/.8 var(--serif);letter-spacing:-1px}.gift-card-brand em{color:#cfc19b;font-size:35.3px}.gift-card-foot{font-size:16px;letter-spacing:.14em;display:flex;justify-content:space-between;align-items:center}.gift-card-foot small{font-size:16px;letter-spacing:.23em}.gift-caption{position:absolute;bottom:0;left:5%;font:italic 16px var(--serif);color:#666553}/* Photo-led journal cards, including the journal archive. */
.journal-section{background:linear-gradient(#f6f3ea,#fcf8fb);border:0}.journal-card{padding:0;border:1px solid #daceb280;border-radius:9px;background:#fbf5f8;overflow:hidden;min-height:0;box-shadow:0 8px 25px #3d3e3706}.journal-card:nth-child(3n+2){background:#f3efe3}.journal-photo{width:100%;height:245px;position:relative;overflow:hidden}.journal-photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#2f302c80)}.journal-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.journal-card:hover .journal-photo img{transform:scale(1.05)}.journal-photo>span{position:absolute;bottom:20px;left:27px;z-index:1;color:#fff;font-size:16px;letter-spacing:.18em}.journal-body{padding:30px;flex:1;display:flex;flex-direction:column;align-items:flex-start}.journal-body .eyebrow{font-size:16px;color:#7f7b62;margin-bottom:18px}.journal-body h3{font-size:22px;line-height:1.16;margin-bottom:25px}.journal-body .text-link{margin-top:auto}/* A studio visit, framed as one continuous composition. */
.visit-section{background:radial-gradient(ellipse at 0 0,#f2eee2,transparent 55%),linear-gradient(135deg,#e8e1cf,#cbbc93);position:relative}.studio-panel{display:grid;grid-template-columns:1.15fr 1fr;background:#fcf5fa85;border:1px solid #ffffff80;border-radius:16px;overflow:hidden}.studio-photo{position:relative;min-height:425px}.studio-photo img{width:100%;height:calc(100% + 32px);position:absolute;top:-16px;object-fit:cover}.studio-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#31322da0)}.studio-photo>span{position:absolute;bottom:35px;left:40px;z-index:1;color:white;font:italic 30.6px var(--serif)}.studio-info{padding:45px 50px}.studio-info h3{font-size:22px;line-height:1.25}.studio-info>p{font-size:16px;margin:20px 0}.studio-actions{margin:20px 0}.studio-info .button{padding:13px 25px;font-size:16px}.studio-hours{margin:25px 0;padding:15px 0;border-block:1px solid #beb08860}.studio-hours summary{font-size:16px;cursor:pointer;list-style:none}.studio-hours summary:after{content:'View';float:right;font-size:16px;color:#6a6956}.studio-hours[open] summary:after{content:'Close'}.studio-hours .hours{margin-top:15px}.map-composition{margin-top:28px;display:grid;grid-template-columns:.75fr 1.4fr;gap:35px;align-items:center;background:#4a4b41;color:#f8f5ed;border:1px solid #76745d;border-radius:12px;padding:30px}.map-caption{padding:15px}.map-caption .eyebrow{color:#daceb2}.map-caption .area-list{display:block}.map-caption .area-list a{font-size:22px;line-height:1.6;text-decoration-color:#a69c7880}.map-caption p{font-size:16px;color:#d2c4a1;margin-top:20px}.map-frame{position:relative;border-radius:8px;overflow:hidden;min-height:310px}.map-frame iframe{width:100%;height:310px;border:0;display:block;filter:saturate(.55)}.map-open{position:absolute;bottom:15px;left:15px;padding:11px 17px;border-radius:40px;background:#fbf9f3;color:#47483f;font-size:16px;box-shadow:0 3px 15px #30302c22}.contact-options{gap:60px}.contact-note{padding:45px;background:linear-gradient(145deg,#ebe4d4,#f3efe4);border-radius:15px}.contact-note h3{font-size:33.1px}.contact-note p{margin-top:25px;font-size:16px}/* Rich closing appointment composition and matching footer. */
.booking-section{background:radial-gradient(ellipse at 0 0,#5f5f4f,transparent 65%),linear-gradient(125deg,#41423b,#31322d);color:#f6f2e8;padding:85px 0;overflow:hidden}.booking-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:7%;align-items:center}.booking-copy .eyebrow{color:#cabb91}.booking-copy h2{font-size:clamp(35.3px,2.9vw,42.8px)}.booking-copy h2 em{color:#d1c39f}.booking-copy>p{color:#d5c8a8;max-width:370px;font-size:16px;margin:28px 0}.booking-actions{display:flex;align-items:center;gap:28px}.booking-button{background:linear-gradient(120deg,#eae3d2,#c0b189);color:#3b3c36;border-color:#eee8da;box-shadow:0 8px 25px #25262330,inset 0 1px 0 #fff9;padding:20px 32px}.booking-button:hover{background:linear-gradient(120deg,#f4f0e5,#d7cbad);color:#3b3c36}.booking-actions .quiet-link{color:#e9e2d0;font-size:16px}.booking-details{display:flex;gap:22px;margin-top:35px;font-size:16px;color:#bbad86;letter-spacing:.04em}.booking-details>span+span{padding-left:22px;border-left:1px solid #ffffff30}.booking-visual{height:440px;border-radius:160px 160px 12px 12px;position:relative}.booking-visual img{width:100%;height:calc(100% + 32px);margin-top:-16px;object-fit:cover;object-position:center}.booking-visual:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#2e2f2b99)}.booking-seal{position:absolute;bottom:30px;left:35px;z-index:1;font:22px/.95 var(--serif);color:white}.booking-seal em{color:#eee8d9}.site-footer{background:radial-gradient(ellipse at 90% 80%,#64645255,transparent 60%),linear-gradient(130deg,#3d3e38,#4d4e43);border-top:1px solid #928b6c55;color:#f1ece0;padding-top:70px}.footer-brand{font-size:33.1px;color:#eae3d2}.footer-brand span{color:#c6b78d;font-size:8.4px;letter-spacing:.2em}.footer-main p{color:#d4c7a5}.footer-main .eyebrow{color:#c7b78e}.footer-links a,.footer-links button{transition:color .25s,translate .25s}.footer-links a:hover,.footer-links button:hover{color:#fff;translate:3px 0}.footer-bottom{color:#c3b48b;border-color:#a99e7a40}@keyframes luxuryShine{0%,55%{left:-100%}80%,100%{left:170%}}@keyframes ctaGlow{0%,60%,100%{box-shadow:inset 0 1px 0 #ffffff30,0 8px 23px #40413a20}75%{box-shadow:inset 0 1px 0 #ffffff50,0 10px 30px #72705a55}}@keyframes ctaEntrance{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}@keyframes lineBreathe{0%,100%{scale:1 1;opacity:.7}50%{scale:.6 1;opacity:1}}@media(min-width:1600px){.review-card{width:calc((94vw - 72px)/5)}}@media(max-width:1100px){.review-card{width:calc((94vw - 36px)/3)}.studio-info{padding:35px}.gift-card{height:62%;padding:26px}.gift-art{height:340px}.gift-card-brand{font-size:32.8px}.gift-card-brand em{font-size:33.1px}.booking-actions{gap:16px;flex-wrap:wrap}.booking-visual{height:410px}.map-composition{gap:15px}.map-caption .area-list a{font-size:22px}.journal-photo{height:215px}.journal-body{padding:24px}}@media(max-width:850px){.review-card{width:calc((94vw - 18px)/2.5)}.gift-layout{gap:5%}.gift-card-label{font-size:16px}.gift-card-brand{font-size:30.2px}.gift-card-brand em{font-size:31.3px}.gift-card-foot{font-size:16px;letter-spacing:.06em}.gift-card-foot small{font-size:16px}.gift-art{height:315px}.gift-card{padding:24px}.gift-caption{font-size:16px}.gift-copy h2{font-size:33.5px}.studio-panel{grid-template-columns:1fr 1fr}.studio-info{padding:30px}.studio-info h3{font-size:22px}.studio-photo>span{left:25px;font-size:22px}.map-composition{grid-template-columns:1fr;padding:25px;gap:15px}.map-caption{padding:0}.map-caption .area-list{display:flex;gap:24px}.map-caption .area-list a{font-size:18px}.map-caption .eyebrow{margin-bottom:12px}.map-caption p{margin:12px 0 0}.journal-photo{height:190px}.journal-body{padding:21px}.journal-body h3{font-size:22px}.booking-visual{height:385px}.booking-copy h2{font-size:38px}.booking-details{display:block}.booking-details>span{display:block;margin-top:6px}.booking-details>span+span{border:0;padding:0}.footer-main .reveal{opacity:1;transform:none}}@media(max-width:600px){.hero-actions{gap:12px}.hero-actions .button{padding:16px 25px;font-size:16px}.hero-actions .quiet-link{padding:14px 22px;font-size:16px}.review-section{padding-bottom:55px}.google-summary{display:inline-flex;padding:13px 20px}.google-summary strong{font-size:16px}.review-track{padding-left:6%;padding-right:6%;gap:14px}.review-card{width:79vw;min-height:335px;padding:27px 25px}.review-card blockquote{font-size:22px;min-height:125px}.review-author strong{font-size:16px}.review-author time{font-size:16px}.review-bottom{align-items:center;gap:15px}.review-bottom p{font-size:16px;max-width:180px}.review-bottom p span{font-size:16px}.text-controls{gap:7px}.text-controls button{padding:9px 12px;font-size:16px}.review-dialog{padding:43px 28px 30px}.review-dialog blockquote{font-size:22px}.gift-layout{display:flex;flex-direction:column;gap:40px}.gift-copy{width:100%}.gift-copy h2{font-size:35.6px}.gift-copy>p{font-size:16px;max-width:310px}.gift-note{font-size:16px}.gift-art{height:315px;width:100%;max-width:390px}.gift-card{width:88%;height:65%;padding:26px;top:4%}.gift-envelope{height:65%;top:18%}.gift-card-label{font-size:16px}.gift-card-brand{font-size:32.4px}.gift-card-brand em{font-size:33.9px}.gift-card-foot{font-size:16px}.gift-caption{bottom:0;font-size:18px}.journal-photo{height:245px}.journal-body{padding:28px}.journal-body h3{font-size:22px}.journal-body .eyebrow{font-size:16px}.studio-panel{display:flex;flex-direction:column;border-radius:12px}.studio-photo{min-height:300px;width:100%}.studio-photo>span{font-size:30.9px;left:26px;bottom:25px}.studio-info{padding:30px 27px}.studio-info h3{font-size:22px}.studio-info>p{font-size:16px}.studio-info .eyebrow{font-size:16px}.map-composition{padding:24px;margin-top:20px}.map-caption .area-list{display:block}.map-caption .area-list a{font-size:22px;line-height:1.5}.map-caption p{font-size:16px}.map-frame,.map-frame iframe{height:285px;min-height:285px}.map-open{bottom:15px;left:10px;font-size:16px;padding:9px 12px}.booking-section{padding:65px 0}.booking-layout{display:flex;flex-direction:column;gap:40px}.booking-copy{width:100%}.booking-copy h2{font-size:38.4px}.booking-copy>p{font-size:16px;max-width:285px}.booking-actions{gap:22px}.booking-button{padding:18px 26px;font-size:16px}.booking-actions .quiet-link{font-size:16px}.booking-details{margin-top:26px}.booking-visual{height:370px;width:100%;border-radius:140px 140px 10px 10px}.booking-seal{font-size:31.3px}.site-footer{padding-top:50px}.footer-main{gap:34px 20px}.footer-brand{font-size:34.5px}.contact-note{margin-top:35px;padding:35px}.offer-dialog input{font-size:16px}.js-motion .reveal{transform:translateY(18px)}.js-motion .reveal.is-visible{transform:none}}@media(prefers-reduced-motion:reduce){.image-enter img{scale:1}.js-motion .map-enter{clip-path:none}.js-motion .reveal-heading{filter:none}.hero-photo img,.booking-visual img,.studio-photo img{translate:none!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important}.reduce-motion .reveal{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}.review-card{height:390px;min-height:390px}.review-card blockquote{font-size:18px;line-height:1.3;min-height:0;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;margin:24px 0}.review-author{flex-shrink:0}.review-read{flex-shrink:0}.review-card-top{flex-shrink:0}@media(max-width:600px){.review-card{height:390px;min-height:390px}.review-card blockquote{font-size:22px}}#studio-map{height:340px;width:100%;background:#eae3d2;z-index:0}.map-frame{min-height:340px}.leaflet-tile-pane{filter:grayscale(.72) sepia(.12) saturate(.65)}.map-zoom{position:absolute;top:14px;left:14px;z-index:3;display:flex;gap:5px}.map-zoom button{border:1px solid #c8b88e;background:#fff8fc;color:#44453d;font:16px var(--sans);border-radius:30px;padding:9px 13px;box-shadow:0 3px 10px #3e3f3820}.map-open{z-index:3;bottom:27px}.studio-map-pin{position:relative}.pin-dot{position:absolute;left:86px;bottom:-9px;width:18px;height:18px;border-radius:50%;background:#494a40;border:4px solid #f2ede1;box-shadow:0 0 0 6px #4c4d4233,0 3px 10px #32332e44}.pin-label{position:absolute;bottom:20px;left:0;width:190px;text-align:center;background:linear-gradient(130deg,#4e4f44,#373732);color:#faf8f1;padding:11px 8px;border-radius:7px;font:18px/1 var(--serif);box-shadow:0 7px 18px #34353033}.pin-label small{display:block;font:16px/1.5 var(--sans);margin-top:6px;color:#e3dbc5}.leaflet-container .leaflet-control-attribution{font:10.8px/1.5 var(--sans);background:#fffffff0;color:#3c3d37}.leaflet-control-attribution a{color:#545448}.map-frame .leaflet-control-attribution{max-width:100%}@media(max-width:600px){#studio-map,.map-frame{height:300px;min-height:300px}.map-zoom{top:10px;left:10px}.map-zoom button{font-size:16px;padding:8px 10px}.pin-label{font-size:18px}.leaflet-container .leaflet-control-attribution{font-size:8.4px}}

