/* Lulu Nails — Beauty editorial. Colores centrales en :root. */
:root{--pink:#e84d91;--blush:#f8c8dc;--yellow:#fbe88f;--ivory:#fff8f4;--plum:#5a2641;--ink:#1f0f18;--text:#38232e;--muted:#806c77;--line:rgba(90,38,65,.16);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ivory);color:var(--text);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased}img{width:100%;height:100%;display:block;object-fit:cover}a{color:inherit;text-decoration:none}::selection{background:var(--blush);color:var(--plum)}.skip{position:absolute;top:-100px;left:10px;background:white;padding:10px;z-index:99}.skip:focus{top:10px}
.header{position:absolute;z-index:20;top:0;left:0;width:100%;color:var(--ivory);border-bottom:1px solid #ffffff35}.nav-wrap{width:min(var(--max),calc(100% - 64px));min-height:82px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--blush);color:var(--plum);font-family:var(--serif);font-size:20px;letter-spacing:-3px}.brand-icon span{color:var(--pink);font-size:13px}.brand b{display:block;font-family:var(--serif);font-size:23px;font-weight:500;line-height:1.1}.brand small{display:block;font-size:7px;letter-spacing:2px;margin-top:5px}.header nav{display:flex;align-items:center;gap:clamp(12px,1.8vw,25px)}.header nav a,.footer nav a{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.header nav a{position:relative}.header nav a:after{content:"";position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--blush);transition:width .2s}.header nav a:hover:after{width:100%}.pill{display:flex;align-items:center;gap:9px;background:var(--pink);border-radius:50px;padding:12px 17px;color:white;font-size:10px;font-weight:700;text-transform:uppercase;white-space:nowrap;transition:transform .2s}.pill:hover{transform:translateY(-2px)}.menu-toggle{display:none}
.hero{position:relative;min-height:clamp(680px,95svh,900px);display:flex;align-items:center;overflow:hidden;background:#351725;color:var(--ivory)}.hero-bg{position:absolute;inset:0;background:url("https://images.unsplash.com/photo-1604654894610-df63bc536371?auto=format&fit=crop&w=2200&q=90") center 42%/cover;animation:settle 1s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#1f0f18e8 0%,#1f0f18a8 38%,#1f0f1820 78%),linear-gradient(0deg,#1f0f1860,transparent 40%)}.hero-copy{position:relative;z-index:1;width:min(var(--max),calc(100% - 64px));margin:65px auto 0;padding:45px 0 75px}.eyebrow{margin:0 0 16px;color:var(--pink);font-size:9px;font-weight:700;letter-spacing:.22em}.eyebrow.light{color:#ffd6e6}.hero h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:.99}.hero h1{font-size:clamp(58px,7.4vw,100px);margin:0 0 23px;max-width:750px}.hero em,h2 em{color:var(--pink);font-weight:500}.hero h1 em{color:#ff9bc7}.hero-desc{max-width:400px;font-size:15px;color:#fff8f4e8;margin-bottom:27px}.actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:13px 21px;min-height:46px;border:1px solid transparent;border-radius:50px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button:active{transform:scale(.98)}.pink{background:var(--pink);color:white;box-shadow:0 8px 25px #e84d9130}.pink:hover{background:#f65b9b}.ghost{border-color:#ffffffb0;color:white;background:#ffffff0a}.ghost:hover{background:#ffffff1b}.hero-traits{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:38px;color:#fff8f4d9;font-size:10px}.hero-note{position:absolute;right:5%;bottom:17%;max-width:190px;color:#ffd5e5;font-family:var(--serif);font-size:23px;font-style:italic;transform:rotate(-8deg)}.hero-note b{color:var(--pink);font-size:30px}.scroll{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#ffffffb8;white-space:nowrap}
.section{padding:clamp(72px,8.5vw,120px) max(32px,calc((100vw - var(--max))/2))}.intro{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(40px,7vw,90px);align-items:center;overflow:hidden}.intro-photo{position:relative;height:clamp(390px,46vw,570px);overflow:hidden;border-radius:45% 45% 14px 14px}.intro-photo img{transition:transform .7s}.intro-photo:hover img{transform:scale(1.04)}.sticker{position:absolute;bottom:34px;left:0;background:var(--blush);color:var(--plum);padding:18px 22px;border-radius:0 15px 15px 0;font-family:var(--serif);font-size:18px;font-style:italic;line-height:1.15;transform:rotate(-5deg)}.sticker b{display:block;color:var(--pink);font-size:24px}.intro-text{max-width:480px;padding:20px 0}.intro h2,.heading h2,.portfolio h2,.space h2,.contact h2{font-size:clamp(43px,5vw,65px);margin:0 0 24px}.intro-text>p:not(.eyebrow){font-size:15px}.muted{color:var(--muted);font-size:13px!important}.values{display:flex;flex-wrap:wrap;gap:12px 20px;border-top:1px solid var(--line);margin-top:28px;padding-top:18px;color:var(--muted);font-size:10px}.values span:first-letter{color:var(--pink)}.seal{position:absolute;right:6%;top:10%;width:95px;height:95px;border:1px dashed var(--pink);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--pink);font-size:7px;letter-spacing:1px;transform:rotate(12deg);background:#fff8f4b8}.seal b{font-size:25px}
.services{background:#fff0f5}.heading{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:42px}.heading h2{margin-bottom:0}.heading>p{max-width:350px;margin:0 0 5px;color:var(--muted);font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}.service{overflow:hidden;border-radius:15px;background:#fffaf8;border:1px solid #5a26410d;transition:transform .25s,box-shadow .25s}.service:hover{transform:translateY(-5px);box-shadow:0 16px 38px #4d1c3518}.service>img{height:175px;border-radius:15px 15px 24px 8px;transition:transform .5s}.service:hover>img{transform:scale(1.04)}.service>div{padding:16px 14px 19px}.service small{font-size:8px;font-weight:700;letter-spacing:.15em;color:var(--pink)}.service h3{font-family:var(--serif);font-size:21px;line-height:1.1;font-weight:500;color:var(--plum);margin:8px 0}.service p{min-height:55px;color:var(--muted);font-size:11px;line-height:1.55}.service a{display:inline-flex;gap:12px;align-items:center;color:var(--pink);font-size:10px;font-weight:700}.service-note{text-align:center;color:var(--muted);font-size:12px;margin:28px 0 0}.service-note a{text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:4px;color:var(--plum)}
.portfolio{background:var(--plum);color:var(--ivory)}.portfolio .eyebrow{color:#f7a4c9}.portfolio h2 em{color:#ff9bc7}.portfolio-heading{display:grid;grid-template-columns:1fr .8fr auto;gap:32px;align-items:end;margin-bottom:35px}.portfolio-heading>p{max-width:300px;margin:0 0 5px;color:#fff8f4b8;font-size:12px}.outline{border-color:#ffffff80;color:white}.outline:hover{background:#ffffff15}.gallery{display:grid;grid-template-columns:1.15fr 1fr .85fr;grid-template-rows:215px 215px;gap:14px}.gallery figure{position:relative;overflow:hidden;margin:0;border-radius:12px;background:#7a4c62}.gallery figure:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#1f0f18b8)}.gallery figure img{transition:transform .6s}.gallery figure:hover img{transform:scale(1.06)}.gallery figcaption{position:absolute;z-index:1;bottom:13px;left:15px;right:15px;display:flex;justify-content:space-between;gap:8px;color:white;font-family:var(--serif);font-style:italic;font-size:16px}.gallery figcaption span{font:9px var(--sans);opacity:.7}.g-tall{grid-row:span 2}.g-wide:last-child{grid-column:span 2}.gallery-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:24px;color:#fff8f4b8;font-size:11px}.gallery-bottom a{color:#ffb3d2;font-weight:700}
.space{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(40px,7vw,90px);align-items:center;background:linear-gradient(125deg,#fff8f4,#fce0eb)}.space-text{max-width:420px}.space-text>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-bottom:26px}.space-image{height:clamp(330px,40vw,490px);position:relative;overflow:hidden;border-radius:8px 70px 8px 8px;background:var(--blush)}.space-image>span{position:absolute;bottom:24px;left:0;background:var(--ivory);padding:13px 21px;color:var(--plum);font-family:var(--serif);font-style:italic;transform:rotate(-5deg);box-shadow:0 12px 30px #4d1c3518}.space-image b{color:var(--pink);font-size:18px;font-weight:500}
.contact{display:grid;grid-template-columns:.8fr 1.05fr .9fr;gap:30px;align-items:center;padding-top:80px;padding-bottom:80px}.contact h2{font-size:clamp(37px,3.5vw,48px)}.contact p:not(.eyebrow){color:var(--muted);font-size:12px}.address{display:flex;gap:12px;color:var(--text)!important}.address>b{font-size:25px;color:var(--pink)}.address strong{color:var(--plum)}.provisional{font-size:9px!important;color:#a34d75!important}.soft{background:var(--blush);color:var(--plum);margin-top:7px}.map{position:relative;min-height:320px;overflow:hidden;border-radius:16px;background:#f4dce6;box-shadow:0 14px 35px #4d1c3515}.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.75)}.map>span{position:absolute;left:10px;bottom:10px;background:#fff8f4ed;color:var(--plum);padding:6px 9px;border-radius:6px;font-size:8px}.contact-text{scroll-margin-top:90px}.contact-text .button{width:100%;justify-content:space-between;margin-bottom:9px;padding-inline:16px}.social{border-color:var(--line);color:var(--plum)}.social:hover{background:#fff0f5}.meta{display:flex;gap:25px;margin-top:18px;color:var(--pink);font-size:18px}.meta span{display:grid;grid-template-columns:18px auto;column-gap:7px}.meta b{font-size:10px;color:var(--plum)}.meta small{grid-column:2;color:var(--muted);font-size:9px}
.footer{background:#2a1320;color:var(--ivory);padding:28px max(32px,calc((100vw - var(--max))/2)) 17px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:25px}.footer .brand-icon{width:42px;height:42px}.footer .brand b{font-size:21px}.footer nav{display:flex;flex-wrap:wrap;gap:16px}.footer nav a{font-size:8px;color:#fff8f4bd}.footer nav a:hover{color:#ff9bc7}.social-icons{display:flex;gap:10px}.social-icons a{display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff40;border-radius:50%;font-size:20px}.footer-bottom{border-top:1px solid #ffffff24;padding-top:14px;display:flex;justify-content:space-between;gap:20px;color:#fff8f480;font-size:9px}.float-wa{position:fixed;z-index:15;right:20px;bottom:20px;width:50px;height:50px;display:grid;place-items:center;border:3px solid #ffffffd9;border-radius:50%;background:var(--pink);color:white;font-size:24px;box-shadow:0 8px 24px #37142640;transition:transform .2s}.float-wa:hover{transform:translateY(-4px) rotate(5deg)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:translateY(0)}:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}@keyframes settle{from{transform:scale(1.07)}to{transform:scale(1.02)}}
@media(max-width:1080px){.nav-wrap{width:calc(100% - 42px);gap:15px}.header nav{gap:12px}.header nav a{font-size:8px}.brand b{font-size:20px}.brand-icon{width:40px;height:40px}.pill{padding:10px 12px;font-size:9px}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service>img{height:205px}.contact{grid-template-columns:.8fr 1fr}.contact-text{grid-column:1/-1;max-width:620px}}
@media(max-width:760px){html{scroll-padding-top:72px}.nav-wrap{width:calc(100% - 30px);min-height:72px;gap:8px}.brand-icon{width:38px;height:38px}.brand b{font-size:19px}.brand small{font-size:6px;letter-spacing:1.6px}.menu-toggle{display:block;order:3;margin-left:auto;width:38px;height:38px;border:0;background:transparent;color:white;padding:8px;cursor:pointer}.menu-toggle i{display:block;height:2px;margin:6px 0;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] i:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] i:last-child{transform:translateY(-4px) rotate(-45deg)}.pill{order:2;padding:9px 11px}.header nav{position:fixed;top:72px;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 22px 20px;background:#2a1320f7;border-bottom:1px solid #ffffff20;opacity:0;visibility:hidden;transform:translateY(-8px);transition:.2s}.header nav.open{opacity:1;visibility:visible;transform:none}.header nav a{padding:13px 4px;border-bottom:1px solid #ffffff18;font-size:10px}.header nav a:after{display:none}.hero{min-height:92svh;min-height:740px;min-height:92svh;align-items:end}.hero-bg{background-position:59% center}.hero-shade{background:linear-gradient(0deg,#1f0f18ed 0%,#1f0f18a8 42%,#1f0f1810 100%)}.hero-copy{width:calc(100% - 40px);margin:0 auto;padding:0 0 98px}.hero h1{font-size:clamp(49px,12vw,73px);margin-bottom:18px}.hero-desc{font-size:13px;max-width:330px}.button{padding:12px 15px;min-height:44px;font-size:9px;gap:12px}.hero-traits{gap:10px 15px;margin-top:24px;font-size:9px}.hero-traits span:last-child{display:none}.hero-note{top:18%;right:6%;bottom:auto;max-width:130px;font-size:17px}.scroll{font-size:8px}.section{padding:70px 20px}.intro{grid-template-columns:1fr;gap:32px}.intro-photo{height:420px;width:88%}.intro-text{padding:0}.intro h2,.heading h2,.portfolio h2,.space h2{font-size:clamp(42px,10vw,57px)}.seal{right:4%;top:35px;width:78px;height:78px;font-size:6px;background:#fff8f4dc}.seal b{font-size:21px}.heading{display:block;margin-bottom:28px}.heading>p{margin-top:18px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.service>img{height:160px}.service>div{padding:13px 11px 16px}.service h3{font-size:19px}.service p{font-size:10px;min-height:50px}.service-last{grid-column:1/-1;display:grid;grid-template-columns:.8fr 1fr}.service-last>img{height:100%;min-height:190px;border-radius:15px 0 0 15px}.service-last>div{align-self:center}.portfolio-heading{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.portfolio-heading>p{margin:0}.portfolio-heading .button{justify-self:start}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:230px 155px 155px;gap:9px}.g-tall{grid-row:auto;grid-column:1/-1}.g-wide:last-child{grid-column:1/-1}.gallery figcaption{left:11px;right:11px;bottom:9px;font-size:13px}.gallery-bottom{flex-direction:column;gap:12px}.space{grid-template-columns:1fr;gap:28px}.space-image{height:350px;border-radius:8px 50px 8px 8px}.contact{grid-template-columns:1fr;gap:28px}.contact-text{grid-column:auto}.map{min-height:290px}.footer{padding:26px 20px 16px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:22px 12px}.footer nav{grid-column:1/-1;order:3;gap:12px 16px}.footer nav a{font-size:8px}.social-icons{justify-self:end}.footer-bottom{font-size:8px}.float-wa{right:13px;bottom:13px;width:47px;height:47px}}
@media(max-width:390px){.nav-wrap{width:calc(100% - 20px);gap:6px}.brand{gap:6px}.brand b{font-size:17px}.brand small{letter-spacing:1px}.pill{padding:8px 9px;font-size:8px}.hero h1{font-size:46px}.service-grid{gap:8px}.service>img{height:140px}.service h3{font-size:17px}.gallery{grid-template-rows:210px 145px 145px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
