/* Lea's review: personal website services, touch-friendly interaction. */
.nav>a{font-weight:700}
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 20% 10%,#f2b6cb66,transparent 55%),radial-gradient(ellipse at 85% 40%,#ffffffdd,transparent 60%);background-size:150% 150%;animation:blush-drift 18s ease-in-out infinite alternate;pointer-events:none}
@keyframes blush-drift{from{background-position:0 0}to{background-position:100% 60%}}
.hero-copy{max-width:1000px}.hero-copy h1{line-height:1.13}.hero-copy p{max-width:750px}
.hero-picture{height:480px}.hero-picture>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.split-photo>img{width:100%;height:100%;object-fit:cover;display:block}
.services{gap:28px;align-items:start}
.service.flip-service{display:block;padding:0;border:1px solid #E5D9DF;border-radius:20px;min-width:0;overflow:hidden;background:white;box-shadow:0 12px 36px #29293005}
.flip-stage{perspective:1400px}
.flip-inner{display:grid;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.is-flipped .flip-inner{transform:rotateY(180deg)}
.flip-face{grid-area:1/1;padding:36px;min-height:370px;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;align-items:flex-start}
.flip-front{background:#fff}
.flip-front .service-kicker{font-size:14px;letter-spacing:.09em;text-transform:uppercase;font-weight:650;color:#C72461;margin-bottom:25px}
.flip-front h3{font-size:clamp(30px,3vw,40px);margin-bottom:22px;line-height:1.12}
.flip-face p{font-size:16px;line-height:1.65;margin-bottom:20px}
.card-note{color:#625D65;font-size:14px;margin-top:auto;padding-top:16px}
.flip-back{transform:rotateY(180deg);background:#292930;color:white}
.flip-back h3{color:white;font-size:30px}
.flip-back p{color:#fff}.flip-back ul{padding-left:20px;margin:0 0 24px;color:#f9edf2;font-size:16px;line-height:1.6}
.flip-back li+li{margin-top:8px}.flip-back .btn{margin-top:auto}
.flip-toggle{display:block;width:100%;min-height:56px;border:0;border-top:1px solid #E5D9DF;padding:16px 24px;background:#F9EDF2;color:#A31B4E;font:650 16px/1.5 Manrope,Arial,sans-serif;text-align:left}
.flip-toggle:hover{background:#f4dfE8}
.service.flip-service>.area-feedback{padding:12px 20px;justify-content:flex-start;background:white}
.split-copy .refresh-label{font-family:Fraunces,Georgia,serif;font-size:30px;line-height:1.2;font-weight:650;letter-spacing:-.02em;text-transform:none;margin-bottom:18px}
.split-copy h2{font-size:clamp(28px,2.7vw,38px)}
.steps{gap:24px}.step{display:block;border:1px solid #E5D9DF;border-radius:16px;background:#F9EDF2;padding:28px;transition:transform .25s,box-shadow .25s}
.step:last-child{border:1px solid #E5D9DF;padding:28px}
.step h3{font-family:Fraunces,Georgia,serif;font-size:26px;font-weight:600;line-height:1.15;margin-bottom:18px}
.step p{font-size:16px;line-height:1.65}
.step-arrived{animation:card-arrive .7s ease-out both}
.step:nth-child(2){animation-delay:.12s}.step:nth-child(3){animation-delay:.24s}
@keyframes card-arrive{from{opacity:.4;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover){.step:hover{transform:translateY(-5px);box-shadow:0 14px 30px #2929300b}}
.pricing-inner{grid-template-columns:minmax(0,1fr) auto;gap:32px}.pricing h2{max-width:700px}.pricing p{max-width:620px}
.optional-label{font-weight:400;font-size:14px;color:#625D65}
.contact-form>.field{display:block}.contact-form>.field>input,.contact-form>.field>select,.contact-form>.field>textarea{display:block;margin-top:8px}
@media(max-width:950px){.hero-picture{height:320px}.flip-face{padding:28px;min-height:410px}.flip-front h3{font-size:34px}.steps{grid-template-columns:1fr}.step h3{font-size:26px}.step p{max-width:650px}}
@media(max-width:680px){.hero-inner{padding-top:40px}.hero-copy .eyebrow{font-size:13px;line-height:1.6;margin-bottom:20px}.hero-copy h1{font-size:clamp(34px,8.7vw,48px);margin-bottom:24px}.hero-copy h1 br{display:block}.hero-copy p{line-height:1.75}.hero-picture{height:auto;aspect-ratio:3/2;margin-top:32px}.hero-picture>img{object-position:center}.services{grid-template-columns:1fr;gap:24px}.flip-face{min-height:380px;padding:28px}.flip-front h3{font-size:36px}.flip-back h3{font-size:28px}.split-inner{display:block}.split-copy{padding-right:0;padding-block:40px}.split-photo{position:relative;inset:auto;height:auto;aspect-ratio:3/2}.split-photo:after{display:none}.split-copy .refresh-label{font-size:30px}.pricing-inner{display:block}.pricing .btn{margin-top:24px}.section{padding-block:48px}.process h2{margin-bottom:28px}}
@media(max-width:370px){.flip-face{padding:24px;min-height:420px}.flip-front h3{font-size:32px}.step,.step:last-child{padding:24px}.hero-copy h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.hero:before,.step-arrived{animation:none}.flip-inner,.step{transition:none}.step:hover{transform:none}}
