:root{--rose:#ad2456;--rose-light:#f0879f;--ink:#302332;--soft:#fff2f6;--line:#e8e0e4;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{color:var(--ink);background:#fff;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}h1,h2,h3,h4,p,ul{margin:0}h1{font-size:clamp(3.1rem,5vw,5.15rem);font-weight:700;line-height:1.05}h2{letter-spacing:-.045em;font-family:Lora,Georgia,Times New Roman,serif;font-size:2.6rem;font-weight:400;line-height:1.1}h3{font-size:1.13rem;font-weight:600;line-height:1.35}em{color:var(--rose);font-style:normal;font-weight:400}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}button{font:inherit;cursor:pointer}svg{flex-shrink:0}.wrap{width:calc(100% - 112px);max-width:1220px;margin:0 auto}.small{font-size:12px;line-height:1.7}.centered{text-align:center;margin-top:13px}.site-header{z-index:40;background:#fff;border-bottom:1px solid #f1edf0;height:100px;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:28px;height:100%;display:flex}.brand{color:var(--rose);letter-spacing:-.03em;align-items:center;gap:10px;font-family:Playfair Display,Lora,Georgia,serif;font-size:2.8rem;font-weight:700;line-height:1;display:inline-flex}.brand-logo{width:auto;height:48px;display:block}.brand-dot{color:var(--rose-light)}.site-header nav{gap:32px;font-size:14px;display:flex}nav a:hover,.footer a:hover{color:var(--rose)}.account-link{border:1px solid var(--line);border-radius:7px;align-items:center;gap:10px;padding:11px 18px;font-size:14px;display:flex}.btn{border:0;border-radius:8px;justify-content:center;align-items:center;gap:12px;min-height:53px;padding:16px 22px;font-size:15px;font-weight:600;line-height:1.4;display:inline-flex}.btn.primary{background:var(--rose);color:#fff}.btn.full{width:100%}.button-arrow{margin-left:12px;font-size:20px}.eyebrow{letter-spacing:.14em;color:var(--rose);align-items:center;gap:10px;font-size:12px;font-weight:700;line-height:1.6;display:inline-flex}.eyebrow-line{background:var(--rose);width:26px;height:1px;display:inline-block}.text-button{color:var(--rose);text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:0;font-size:14px;font-weight:600;line-height:1.5;display:inline-flex}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:48px;padding-top:60px;padding-bottom:65px;display:grid}.hero-copy>p{max-width:450px;margin-bottom:29px;font-size:17px;line-height:1.8}.hero-fine{color:#756b74;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;font-size:12px;display:flex}.hero-visual{background:#ffe5ec;border-radius:46% 46% 16px 16px;height:530px;padding:13px 12px 24px;position:relative}.hero-photo{object-fit:cover;object-position:50% 50%;border-radius:46% 46% 10px 10px;width:100%;height:100%;display:block}.photo-label{background:#fff;border:1px solid #eee4e7;border-radius:10px;align-items:center;gap:12px;padding:16px 22px;font-size:14px;line-height:1.55;display:flex;position:absolute;bottom:55px;left:-25px;box-shadow:0 8px 28px #4824330d}.image-caption{color:#755964;font-size:12px;position:absolute;bottom:3px;right:16px}.promise-strip{background:#f9f7f8;border-top:1px solid #eee8eb;border-bottom:1px solid #eee8eb}.promise-inner{justify-content:space-between;gap:25px;padding:22px 0;display:flex}.promise-inner span{align-items:center;gap:10px;font-size:14px;display:flex}.section{padding:88px 0}.section-heading{justify-content:space-between;align-items:end;gap:50px;margin-bottom:38px;display:flex}.section-heading>p{max-width:330px;font-size:15px}.service-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.service-card{border:1px solid var(--line);border-radius:12px;flex-direction:column;padding:27px 22px 22px;display:flex}.service-icon{width:55px;height:55px;color:var(--rose);border-radius:16px;place-items:center;margin-bottom:27px;display:grid}.tone-0{background:#ffedf3}.tone-1{color:#557444;background:#edf5e9}.tone-2{color:#986629;background:#fff3df}.tone-3{color:#69528a;background:#efedff}.service-card h3{margin-bottom:13px}.service-card p{margin-bottom:18px;font-size:14px;line-height:1.85}.service-note{color:#756b74;border-top:1px solid #f0eaed;margin-top:auto;padding:15px 0;font-size:12px;display:block}.people-section{background:#fff1f5;padding:58px 0}.people-inner{grid-template-columns:1.2fr 1fr;align-items:center;gap:70px;display:grid}.people-inner p{margin-bottom:17px;font-size:15px}.steps{grid-template-columns:repeat(3,1fr);gap:55px;display:grid}.step{border-top:1px solid var(--line);padding-top:22px}.step>span{color:#c9809b;margin-bottom:10px;font-family:Lora,Georgia,serif;font-size:2.1rem;display:block}.step p{font-size:15px}.pricing-section{background:#f9f5f7;padding:70px 0}.pricing-layout{grid-template-columns:1fr 1fr;align-items:center;gap:100px;display:grid}.pricing-copy h2{margin:20px 0}.pricing-copy>p{max-width:390px}.check-list{margin:27px 0;padding:0;list-style:none}.check-list li{align-items:center;gap:10px;margin:12px 0;font-size:14px;display:flex}.check-list svg{color:var(--rose)}.price-card{background:#fff;border:1px solid #e9dce2;border-radius:18px;padding:35px;box-shadow:0 14px 35px #3e1f3108}.price-top>p{color:#756b74;margin-top:4px;font-size:14px}.big-price{letter-spacing:-.04em;margin-top:8px;font-family:Lora,Georgia,serif;font-size:3.7rem;line-height:1.35;display:block}.big-price span{color:#756b74;letter-spacing:normal;font-family:Arial,sans-serif;font-size:1rem}.additional{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;margin:22px 0;padding:17px 0;font-size:14px;display:flex}.additional strong{font-size:16px}.additional strong span{color:#756b74;font-size:13px;font-weight:400}.estimate{margin-bottom:22px}.estimate label{margin-bottom:8px;font-size:13px;font-weight:600;display:block}.duration-select{border:1px solid var(--line);width:100%;height:44px;color:var(--ink);background:#fff;border-radius:8px;padding:0 12px;font-size:15px}.estimate-total{justify-content:space-between;align-items:center;padding:18px 0;font-size:14px;display:flex}.estimate-total strong{font-size:18px}.details-grid{grid-template-columns:.75fr 1.25fr;gap:45px;margin-bottom:20px;display:grid}.details-grid h3{margin-bottom:12px}.details-grid h4{margin:16px 0 8px;font-size:.95rem}.details-grid p{color:#5c525d;font-size:14px}.rate-table{border-collapse:collapse;width:100%;font-size:14px}.rate-table th{text-align:left;color:#756b74;border-bottom:1px solid var(--line);padding:6px 0;font-size:12px;font-weight:600}.rate-table td{border-bottom:1px solid #f0eaed;padding:7px 0}.pricing-notes>p{color:#5c525d;font-size:13.5px;line-height:1.75}.accordion-item{border-bottom:1px solid var(--line)}.accordion-item:last-child{border-bottom:0}.accordion-trigger{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;justify-content:space-between;align-items:start;gap:16px;padding:20px 0;font-size:15px;font-weight:600;display:flex}.accordion-trigger:hover{color:var(--rose)}.accordion-trigger svg{color:#756b74;flex-shrink:0;margin-top:2px;transition:transform .2s}.accordion-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.accordion-content{color:#5c525d;font-size:14px;overflow:hidden}.accordion-content-inner{padding-bottom:22px}.boundaries{grid-template-columns:1fr 1.2fr;gap:80px;display:grid}.boundaries h2{margin:18px 0}.boundaries>div>p{max-width:330px;font-size:15px}.boundary-list>div{gap:18px;margin-bottom:26px;display:flex}.boundary-list svg{width:23px;height:23px;color:var(--rose);stroke-width:1.5px;margin-top:4px}.boundary-list h3{margin-bottom:6px}.boundary-list p{margin-top:8px;font-size:14px}.faq{border-top:1px solid var(--line);grid-template-columns:.8fr 1.2fr;gap:80px;padding-top:60px;display:grid}.closing{text-align:center;background:#fff0f5;border-radius:20px;margin-bottom:65px;padding:48px 25px}.closing>svg{color:var(--rose);margin-bottom:20px}.closing h2{margin:18px 0}.closing p{margin:18px 0 25px}.footer{justify-content:space-between;gap:30px;padding:20px 0 45px;display:flex}.footer>div:first-child p{color:#756b74;max-width:220px;margin-top:10px;font-size:13px}.footer>div:nth-child(2){align-items:start;gap:22px;font-size:14px;display:flex}.footer p.small{color:#756b74;margin-top:10px}.dialog-overlay{z-index:100;background:#30233273;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.booking-dialog{background:#fff;border-radius:18px;width:100%;max-width:460px;max-height:90vh;padding:34px;position:relative;overflow-y:auto}.dialog-close{color:#756b74;background:0 0;border:0;position:absolute;top:20px;right:20px}.dialog-close:hover{color:var(--rose)}.booking-dialog h2{margin:10px 0 8px;font-size:1.6rem}.booking-dialog>p{color:#5c525d;margin-bottom:24px;font-size:14px}.booking-dialog label{margin-bottom:18px;font-size:13px;font-weight:600;display:block}.booking-dialog .field-row{gap:14px;display:flex}.booking-dialog .field-row label{flex:1;min-width:0}.booking-dialog select,.booking-dialog input{border:1px solid var(--line);width:100%;height:44px;color:var(--ink);background:#fff;border-radius:8px;margin-top:8px;padding:0 12px;font-family:inherit;font-size:15px;display:block}.booking-dialog textarea{border:1px solid var(--line);width:100%;color:var(--ink);resize:vertical;background:#fff;border-radius:8px;margin-top:8px;padding:10px 12px;font-family:inherit;font-size:15px;display:block}.booking-dialog .field-error{margin-left:0}.booking-dialog .field-hint{color:#756b74;margin:-10px 0 16px}.booking-summary{background:var(--soft);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:14px 18px;font-size:14px;display:flex}.booking-summary strong{color:var(--rose);font-size:17px}@media (width>=1500px){.hero{gap:75px}.hero-visual{height:560px}}@media (width<=1050px){.wrap{width:calc(100% - 64px)}.hero{gap:30px}.hero-visual{height:470px}.service-grid{grid-template-columns:repeat(2,1fr)}.pricing-layout{gap:50px}.people-inner{gap:40px}.people-inner h2{font-size:2.2rem}.footer>div:nth-child(2){flex-direction:column;align-items:start;gap:10px}.faq,.boundaries{gap:40px}}@media (width<=760px){.wrap{width:calc(100% - 40px)}.site-header{height:78px}.brand{font-size:2.4rem}.brand-logo{height:40px}.site-header nav{display:none}.account-link{padding:9px 12px;font-size:13px}.hero{grid-template-columns:1fr;gap:32px;padding-top:38px;padding-bottom:35px}.hero h1{font-size:3.65rem}.hero-copy>p{max-width:100%;font-size:16px}.hero-visual{border-radius:43% 43% 16px 16px;width:100%;max-width:460px;height:410px;margin:0 auto}.photo-label{padding:13px 18px;bottom:43px;left:0}.hero-fine{font-size:12px}.promise-inner{flex-wrap:wrap;gap:14px;padding:20px 0}.promise-inner span{font-size:13px}.section{padding:55px 0}.section-heading{margin-bottom:28px;display:block}.section-heading>p{max-width:100%;margin-top:20px}.service-grid{gap:13px}.service-card{padding:21px 17px}.service-card h3{font-size:17px}.service-card p{font-size:14px}.service-note{font-size:12px}.people-inner,.pricing-layout,.boundaries,.faq{grid-template-columns:1fr;gap:30px}.people-section{padding:40px 0}.people-inner h2{font-size:2.2rem}.steps{grid-template-columns:1fr;gap:25px}.step{grid-template-columns:45px 1fr;column-gap:16px;display:grid}.step>span{grid-row:span 2;margin-bottom:0}.step h3{margin:0 0 8px}.pricing-section{padding:45px 0}.price-card{padding:25px}.details-grid{grid-template-columns:1fr;gap:25px}.additional{font-size:13px}.additional strong{font-size:19px}.faq{gap:20px}.closing h2{font-size:2.6rem}.footer{flex-wrap:wrap}.footer>div:nth-child(2){font-size:13px}.footer>p.small{border-top:1px solid var(--line);width:100%;padding-top:15px}.booking-dialog{padding:24px}}@media (width<=400px){.hero h1{font-size:3.1rem}.service-grid{grid-template-columns:1fr}.hero .btn{padding:15px;font-size:14px}.eyebrow{font-size:11px}.hero-visual{height:355px}}.auth-modal{background:#fff;border-radius:20px;width:100%;max-width:430px;max-height:90vh;padding:36px;animation:.25s ease-out modal-in;position:relative;overflow-y:auto;box-shadow:0 25px 60px #3023322e,0 0 0 1px #ad24560f}@keyframes modal-in{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.auth-tabs{background:#f5f0f2;border-radius:10px;gap:0;margin-bottom:28px;padding:4px;display:flex}.auth-tab{text-align:center;color:#756b74;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:11px 0;font-size:14px;font-weight:600;transition:all .2s}.auth-tab.active{color:var(--rose);background:#fff;box-shadow:0 2px 8px #ad245614}.auth-tab:not(.active):hover{color:var(--ink)}.auth-form h2{margin-bottom:6px;font-size:1.55rem}.auth-form>p{color:#5c525d;margin-bottom:22px;font-size:13.5px;line-height:1.6}.auth-field{border:1.5px solid var(--line);cursor:text;background:#fafafa;border-radius:10px;align-items:center;gap:12px;height:50px;margin-bottom:12px;padding:0 15px;transition:border-color .2s,box-shadow .2s;display:flex}.auth-field:focus-within{border-color:var(--rose);background:#fff;box-shadow:0 0 0 3px #ad245614}.auth-field svg{color:#b0a5ac;flex-shrink:0}.auth-field:focus-within svg{color:var(--rose)}.auth-field input{width:100%;height:100%;color:var(--ink);background:0 0;border:0;outline:none;font-family:inherit;font-size:15px}.auth-field input::placeholder{color:#b0a5ac}.auth-submit{margin-top:8px;margin-bottom:14px}.auth-error{color:#b91c1c;background:#fff0f0;border:1px solid #fecaca;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:12px 15px;font-size:13.5px;line-height:1.5;display:flex}.field-error{color:#b91c1c;margin:-6px 0 10px 30px;font-size:12px;display:block}.auth-switch{text-align:center;color:#756b74;font-size:13.5px}.auth-switch .text-button{font-size:13.5px}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.7s linear infinite spin}.header-actions{align-items:center;gap:10px;display:flex}.user-avatar{background:linear-gradient(135deg, var(--rose), var(--rose-light));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:inline-flex}.btn-icon{border:1px solid var(--line);color:#756b74;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;transition:all .15s;display:flex}.btn-icon:hover{color:var(--rose);border-color:var(--rose-light);background:var(--soft)}.my-bookings-page{min-height:calc(100vh - 200px);padding:50px 0 80px}.bookings-header{justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:40px;display:flex}.bookings-header h2{margin-top:12px}.btn.outline{border:1px solid var(--line);color:var(--ink);background:#fff;min-height:44px;padding:10px 20px;font-size:14px}.btn.outline:hover{border-color:var(--rose-light);color:var(--rose)}.bookings-loading{text-align:center;color:var(--rose);padding:70px 0}.bookings-loading p{color:#756b74;margin-top:14px;font-size:14px}.bookings-empty{text-align:center;background:#fff0f5;border-radius:20px;max-width:480px;margin:40px auto 0;padding:60px 30px}.bookings-empty>svg{color:var(--rose-light);margin-bottom:16px}.bookings-empty h3{margin-bottom:10px;font-size:1.3rem}.bookings-empty p{color:#5c525d;margin-bottom:24px;font-size:14.5px;line-height:1.75}.bookings-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.booking-card{background:#fff;border:1px solid #ece6e9;border-radius:14px;padding:24px;transition:box-shadow .2s,border-color .2s}.booking-card:hover{border-color:var(--rose-light);box-shadow:0 8px 28px #ad24560f}.booking-card-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.booking-status{letter-spacing:.03em;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:700}.status-pending{color:#92660a;background:#fff4df}.status-confirmed{color:#3d6b2e;background:#edf5e9}.status-completed{color:#5b45a0;background:#efedff}.status-cancelled{color:#a83058;background:#ffedf3}.booking-id{color:#b0a5ac;font-size:13px;font-weight:600}.booking-card h3{margin-bottom:14px;font-size:1.05rem}.booking-meta{flex-wrap:wrap;gap:14px;margin-bottom:18px;display:flex}.booking-meta span{color:#5c525d;align-items:center;gap:6px;font-size:13px;display:flex}.booking-meta svg{color:var(--rose-light)}.booking-notes{color:#5c525d;background:var(--soft);border-radius:8px;align-items:flex-start;gap:6px;margin-bottom:18px;padding:10px 12px;font-size:13px;display:flex}.booking-notes svg{color:var(--rose-light);flex-shrink:0;margin-top:2px}.booking-card-bottom{border-top:1px solid #f0eaed;justify-content:space-between;align-items:center;padding-top:14px;display:flex}.booking-estimate{color:var(--rose);align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.booking-date{color:#b0a5ac;font-size:12px}.booking-card-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.btn.small{gap:8px;min-height:38px;padding:8px 14px;font-size:13px}.btn.outline.danger{color:#b91c1c;border-color:#f3c9c9}.btn.outline.danger:hover{color:#b91c1c;border-color:#b91c1c}.reschedule-panel{background:var(--soft);border-radius:10px;margin-bottom:18px;padding:14px 16px}.reschedule-panel label{margin-bottom:8px;font-size:13px;font-weight:600;display:block}.reschedule-panel .field-row{gap:12px;display:flex}.reschedule-panel .field-row label{flex:1;min-width:0}.reschedule-panel .field-hint{color:#756b74;margin:0 0 8px}.reschedule-panel input{border:1px solid var(--line);width:100%;height:42px;color:var(--ink);background:#fff;border-radius:8px;margin-top:6px;padding:0 12px;font-family:inherit;font-size:14px;display:block}.reschedule-panel-actions{gap:10px;margin-top:10px;display:flex}.reschedule-panel-actions .btn{min-height:40px;padding:8px 16px;font-size:13.5px}@media (width<=760px){.auth-modal{border-radius:16px;padding:24px}.my-bookings-page{padding:30px 0 50px}.bookings-header{flex-direction:column;gap:16px}.bookings-grid{grid-template-columns:1fr}.header-actions{gap:6px}.account-link{gap:6px;padding:8px 10px;font-size:12px}.user-avatar{width:26px;height:26px;font-size:11px}.btn-icon{width:34px;height:34px}.chat-widget-panel{width:auto;height:70vh;bottom:88px;left:12px;right:12px}.chat-fab{bottom:16px;right:16px}}.chat-fab{background:var(--rose);color:#fff;z-index:90;border:0;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;transition:transform .15s;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 10px 28px #ad245659}.chat-fab:hover{transform:scale(1.05)}.chat-widget-panel{z-index:90;background:#fff;border-radius:16px;flex-direction:column;width:380px;height:600px;max-height:75vh;display:flex;position:fixed;bottom:100px;right:28px;overflow:hidden;box-shadow:0 25px 60px #241c2240}.chat-widget-panel-header{background:var(--rose);color:#fff;flex-shrink:0;padding:14px 18px;font-size:14px;font-weight:700}.chat-widget-panel iframe{border:0;flex:1;width:100%}
