@import url('https://fonts.googleapis.com/css2?family=Assistant:wght@400;500;600;700&family=Heebo:wght@300;400;500;600&display=swap');
:root{--paper:#faf6f1;--ink:#493932;--muted:#7c6c65;--rose:#8a555f;--line:#dfd3ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Assistant,Arial,sans-serif;font-size:18px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1160px,calc(100% - 80px));margin-inline:auto}.header{height:125px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:32px;line-height:1;font-weight:600;letter-spacing:-1.2px}.brand span{font-weight:400;margin-right:7px;font-size:21px}.brand small{display:block;font-size:9px;letter-spacing:3px;margin-top:12px;font-weight:400}.header nav{display:flex;gap:35px;font-size:16px}.header nav a:hover{color:var(--rose)}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:15px 25px;background:var(--rose);color:#fff;font-size:16px;border:1px solid var(--rose);transition:background .2s}.button:hover{background:#6e414a}.button.small{padding:10px 20px;background:transparent;color:var(--ink);border-color:var(--line);gap:20px}.button.small:hover{background:#eee4dc}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-block:65px 70px}.eyebrow{font-size:12px;letter-spacing:2px;margin:0 0 22px;color:var(--rose)}h1,h2{font-family:Heebo,Arial,sans-serif;font-weight:300;line-height:1.25;letter-spacing:-2px;margin:0}h1{font-size:clamp(45px,4.7vw,68px)}em{font-weight:300;font-style:normal;color:var(--rose)}.intro{color:var(--muted);font-size:21px;line-height:1.8;margin:28px 0 32px}.hero-note{font-size:14px;color:var(--muted);margin-top:37px;display:flex;align-items:center;gap:12px}.hero-note span{font-size:26px}.portrait{position:relative;margin:0;padding-bottom:26px}.portrait img{width:100%;height:560px;object-fit:cover;object-position:50% 43%;display:block;border-radius:210px 210px 5px 5px}.portrait-label{position:absolute;bottom:66px;right:-28px;padding:18px 25px;background:#faf6f1ee;border:1px solid #fff6;box-shadow:0 8px 28px #4939320a}.portrait-label span{display:block;font-size:24px}.portrait-label small{font-size:9px;letter-spacing:2px}.portrait figcaption{position:absolute;bottom:0;left:0;color:var(--muted);font-size:11px}.vertical-note{position:absolute;left:-31px;top:250px;writing-mode:vertical-rl;font-size:9px;letter-spacing:3px;color:var(--muted)}.ribbon{display:flex;justify-content:center;align-items:center;gap:70px;background:#eee4df;padding:18px;font-size:16px;letter-spacing:1px}.ribbon span:nth-child(even){color:var(--rose)}.section{padding-block:95px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:40px}.section-heading p:last-child{font-size:17px;color:var(--muted)}h2{font-size:44px}h3{font-size:27px;font-weight:400;line-height:1.4;margin:20px 0 10px}.style-layout{display:grid;grid-template-columns:1fr 1.5fr;background:#f0e9e2;min-height:340px}.palette-info{padding:42px}.number{font-size:11px;letter-spacing:2px;color:var(--muted)}.palette-info p{font-size:17px;color:var(--muted);max-width:250px;min-height:58px}.palette-info small{font-size:12px;color:var(--muted)}.swatches{display:flex;gap:17px;margin:25px 0}.swatch{width:29px;height:29px;border:3px solid var(--paper);border-radius:50%;cursor:pointer;outline:1px solid transparent;outline-offset:4px}.swatch[aria-pressed=true]{outline-color:var(--rose)}.pink{background:#ce9e9f}.nude{background:#ba9380}.pearl{background:#f1e8df}.nail-art{--nail:#cc969a;display:flex;position:relative;align-items:center;justify-content:center;gap:24px;overflow:hidden;background:radial-gradient(ellipse at 50% 80%,#c8b2a14d,transparent 60%),#e9dfd5;min-height:340px;direction:ltr}.nail-art[data-tone=nude]{--nail:#be9885}.nail-art[data-tone=pearl]{--nail:#e8dfd5}.nail{height:170px;width:85px;background:linear-gradient(100deg,#ffffff70,transparent 30%,#ffffff35 55%,#54322320),var(--nail);border-radius:48% 48% 35% 35%;box-shadow:12px 20px 23px #66473724,inset 2px 2px 3px #fff8;transform:rotate(-16deg);transition:background .4s}.nail:nth-child(2){height:190px;transform:translateY(-18px) rotate(-8deg)}.nail:nth-child(3){transform:rotate(6deg)}.nail-art>span{position:absolute;bottom:23px;font-family:Georgia,serif;font-style:italic;color:#806b5c;font-size:17px;letter-spacing:2px}.services{background:#f0e9e3}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.service-grid article{border-top:1px solid #cbbdb2;padding-top:25px}.service-grid p{font-size:17px;color:var(--muted);max-width:260px}.service-note{font-size:13px;color:var(--muted);margin:28px 0 0}.about{display:grid;grid-template-columns:80px 1fr 1fr;gap:45px;align-items:center}.flower{font-size:80px;color:#b48685;font-weight:300}.about>p{font-size:19px;color:var(--muted)}.muted{font-size:15px}.contact{text-align:center;padding:65px 25px;background:#eee1df;border-radius:180px 180px 0 0}.contact h2{font-size:48px}.contact>p:not(.eyebrow){color:var(--muted);font-size:17px}.contact-status{display:inline-block;border-top:1px solid #cfb9b5;padding-top:14px;font-size:13px;color:#735751}footer{display:flex;justify-content:space-between;align-items:center;padding-block:30px;color:var(--muted);font-size:14px}footer>span:first-child{font-size:21px;color:var(--ink)}.skip{position:absolute;top:-100px;right:20px;background:var(--ink);color:white;padding:12px;z-index:5}.skip:focus{top:10px}:focus-visible{outline:2px solid var(--rose);outline-offset:5px}@media(min-width:1500px){.hero{padding-block:85px}.portrait img{height:620px}}@media(max-width:850px){.wrap{width:calc(100% - 40px)}.header{height:100px}.header nav{gap:16px;font-size:14px}.hero{gap:35px}.portrait img{height:480px}h1{font-size:46px}.vertical-note{display:none}.hero .button{gap:12px;font-size:14px;padding:14px}.portrait-label{right:-15px;padding:12px 18px}.ribbon{gap:35px}.section{padding-block:65px}.about{grid-template-columns:1fr 1fr;gap:30px}.flower{display:none}.nail{width:65px;height:140px}.nail:nth-child(2){height:160px}.nail-art{gap:15px}.palette-info{padding:28px}.service-grid{gap:25px}}@media(max-width:600px){.header{height:90px}.brand{font-size:28px}.brand span{font-size:18px}.brand small{font-size:8px;letter-spacing:2px}.header nav{display:none}.button.small{font-size:14px;padding:8px 12px;gap:15px}.hero{grid-template-columns:1fr;padding-block:40px;gap:35px}.hero-copy{text-align:center}h1{font-size:49px}.eyebrow{font-size:10px;margin-bottom:16px}.intro{font-size:19px;margin:22px 0}.hero-note{justify-content:center;margin-top:20px}.portrait{width:90%;margin:auto}.portrait img{height:430px}.portrait-label{bottom:50px}.portrait figcaption{font-size:10px}.ribbon{gap:17px;font-size:13px;padding:14px 8px}.section-heading{display:block;margin-bottom:25px}h2{font-size:37px}.section-heading p:last-child{margin-bottom:0}.style-layout{grid-template-columns:1fr}.palette-info{padding:27px}.palette-info p{max-width:none;min-height:0}.nail-art{min-height:300px;grid-row:1}.nail{width:76px;height:150px}.nail:nth-child(2){height:170px}.service-grid{grid-template-columns:1fr;gap:25px;margin-top:30px}.service-grid article{padding-top:15px}.service-grid h3{margin-top:7px}.service-grid p{max-width:none;margin-bottom:0}.about{grid-template-columns:1fr;gap:15px}.contact{padding:55px 22px 40px;border-radius:120px 120px 0 0}.contact h2{font-size:42px}footer{flex-wrap:wrap;gap:10px;font-size:12px}footer small{width:100%;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
/* Booking and customer area */
[hidden]{display:none!important}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.gallery-grid,.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.gallery-grid figure{margin:0}.gallery-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:70px 3px 3px 3px}.gallery-grid figcaption{padding:15px 0;color:var(--muted);font-size:16px}.reviews{background:#eee4df}.review-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px}.review-grid figure{margin:0;padding:30px;background:var(--paper)}.review-grid figure>span{color:var(--rose);letter-spacing:4px}.review-grid blockquote{margin:18px 0;font-size:21px;line-height:1.8}.review-grid figcaption,.sample-note{font-size:13px;color:var(--muted)}.panel{background:#fffaf6;border:1px solid var(--line);padding:30px;border-radius:8px;margin-block:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:16px;font-weight:600}input,select{display:block;width:100%;min-width:0;padding:12px 14px;margin:7px 0 18px;background:#fff;border:1px solid #c8b8af;border-radius:4px;color:var(--ink);font:inherit;font-weight:400;font-size:16px}label small{display:block;margin:-10px 0 18px;color:var(--muted);font-size:12px;font-weight:400}.auth-tabs,.member-heading,.form-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.auth-tabs{border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:25px}.text-button{border:0;background:transparent;color:var(--rose);padding:8px 0;text-decoration:underline;text-underline-offset:5px;font-size:16px}.auth-tabs [aria-pressed=true]{font-weight:700;color:var(--ink)}.member-heading{justify-content:space-between}.notice{font-size:15px;color:var(--rose);min-height:1px;white-space:pre-line}.notice:empty{display:none}.notice.error{color:#9b2525}.appointment-list{display:grid;gap:14px;margin:20px 0}.appointment-card{padding:20px;border:1px solid var(--line);background:#fffaf6;border-radius:5px;display:flex;justify-content:space-between;gap:20px;align-items:center}.appointment-card h4{margin:0;font-size:20px;font-weight:600}.appointment-card p{margin:5px 0;font-size:15px;color:var(--muted)}.appointment-card .form-actions{gap:20px;flex-shrink:0}.status-pill{font-size:12px;background:#eee4df;border-radius:20px;padding:3px 10px;display:inline-block}.customer-list{display:grid;gap:10px;margin-top:20px}.customer-row{padding:15px;border-bottom:1px solid var(--line);font-size:16px;overflow-wrap:anywhere}.booking-section{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;padding:55px 0 75px}.booking-section>div>p{color:var(--muted)}.booking-section .panel{margin:0}.booking-section a{color:var(--rose);text-decoration:underline}.booking-section h3{margin-top:0}fieldset{border:0;padding:0;margin:0 0 20px;min-width:0}legend{font-size:16px;font-weight:600}#slots-message{font-size:14px;color:var(--muted)}.time-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.time-slot{border:1px solid var(--line);padding:9px;background:var(--paper);border-radius:4px;color:var(--ink);direction:ltr}.time-slot[aria-pressed=true]{background:var(--rose);border-color:var(--rose);color:white}summary{cursor:pointer;color:var(--rose);padding:6px 0}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:12px;padding:30px;width:min(480px,calc(100% - 32px));max-height:90vh}dialog::backdrop{background:#31221b66}dialog h3{margin-top:0}#admin-panel>label{max-width:260px}.empty-state{border:1px dashed var(--line);padding:25px;color:var(--muted);font-size:16px}.empty-state a{color:var(--rose);text-decoration:underline}@media(max-width:850px){.booking-section{gap:25px}.review-grid{gap:15px}.review-grid figure{padding:20px}.appointment-card{align-items:start;flex-direction:column}}@media(max-width:600px){.gallery-grid,.review-grid,.form-grid,.booking-section{grid-template-columns:1fr}.panel{padding:20px}.auth-tabs{gap:15px}.auth-tabs button{font-size:14px}.booking-section{padding-block:15px 40px;gap:15px}.booking-section h2{font-size:40px}.time-slots{grid-template-columns:repeat(3,1fr)}.review-grid blockquote{font-size:19px}.gallery-grid img{border-radius:45px 3px 3px 3px}.appointment-card{padding:17px}.member-heading h3{font-size:24px}}
.site-credit{display:flex;align-items:center;justify-content:center;gap:9px;padding:0 20px 24px;color:var(--muted)}.site-credit small{font-size:12px}.site-credit img{display:block;width:100px;height:auto}

.review-grid figure{display:flex;flex-direction:column}.review-author{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:8px}.review-avatar{width:64px;height:64px;flex-shrink:0;object-fit:cover;border-radius:50%;border:2px solid var(--line)}.review-author small{font-size:11px}
