:root{--burgundy: #5c1830;--burgundy-deep: #3f0f20;--gold: #c4a06a;--gold-soft: #d8c19a;--marble: #f6f3ee;--marble-warm: #efe8df;--ink: #1c1216;--ink-soft: #5a4a50;--line: rgba(92, 24, 48, .12);--glass: rgba(246, 243, 238, .78);--shadow: 0 24px 60px rgba(28, 18, 22, .14);--radius: 2px;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Outfit", "Segoe UI", sans-serif;--max: 1120px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--font-body);font-weight:300;background:var(--marble);line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:0;background:none}.container{width:min(100% - 2.5rem,var(--max));margin-inline:auto}.section{padding:clamp(4.5rem,10vw,7.5rem) 0}.section-label{display:inline-block;margin-bottom:1rem;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:500}.section-title{margin:0 0 1rem;font-family:var(--font-display);font-size:clamp(2.4rem,5vw,3.6rem);font-weight:500;line-height:1.08;letter-spacing:-.02em}.section-lead{margin:0;max-width:36rem;color:var(--ink-soft);font-size:1.05rem}.nav{position:fixed;inset:0 0 auto;z-index:50;transition:background .35s ease,backdrop-filter .35s ease,border-color .35s ease,color .35s ease;border-bottom:1px solid transparent;color:var(--marble)}.nav.scrolled{background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom-color:var(--line);color:var(--ink)}.nav-inner{display:flex;align-items:center;justify-content:space-between;min-height:4.5rem;gap:1rem}.nav-brand{display:flex;align-items:center;gap:.75rem}.nav-brand img{width:2.75rem;height:2.75rem;object-fit:cover;border-radius:50%;box-shadow:0 0 0 1px #c4a06a59}.nav-brand span{font-family:var(--font-display);font-size:1.35rem;font-style:italic;letter-spacing:.01em}.nav-links{display:none;gap:1.75rem;align-items:center}.nav-links a{font-size:.84rem;letter-spacing:.08em;text-transform:uppercase;color:inherit;opacity:.82;transition:opacity .2s ease,color .2s ease}.nav-links a:hover{opacity:1}.nav-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.15rem;background:var(--burgundy);color:var(--marble);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;transition:background .25s ease,transform .25s ease}.nav-cta:hover{background:var(--burgundy-deep);transform:translateY(-1px)}.hero{position:relative;min-height:100svh;display:grid;align-items:center;overflow:hidden;color:var(--marble)}@supports (height: 100dvh){.hero{min-height:100dvh}}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 35%;transform:scale(1.04)}.hero-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#1c121647,#1c12162e 35%,#1c1216b8),radial-gradient(ellipse at 20% 20%,rgba(92,24,48,.28),transparent 50%)}.hero-content{position:relative;z-index:1;padding:5.5rem 0 3rem;width:min(100% - 2.5rem,var(--max));margin-inline:auto;margin-top:2rem}.hero h1{margin:0 0 .7rem;max-width:14ch;font-family:var(--font-display);font-weight:500;font-size:clamp(2.35rem,6.2vw,4.25rem);line-height:1.02;letter-spacing:-.03em}.hero p{margin:0 0 1.35rem;max-width:28rem;font-size:clamp(.95rem,2vw,1.08rem);color:#f6f3eee0;font-weight:300}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem}.btn-primary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:3.1rem;padding:.85rem 1.45rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease}.btn-primary{background:var(--gold);color:var(--burgundy-deep);font-weight:500}.btn-primary:hover{background:var(--gold-soft);transform:translateY(-2px)}.btn-ghost{border:1px solid rgba(246,243,238,.45);color:var(--marble)}.btn-ghost:hover{border-color:var(--marble);background:#f6f3ee14}.btn-burgundy{background:var(--burgundy);color:var(--marble)}.btn-burgundy:hover{background:var(--burgundy-deep);transform:translateY(-2px)}.intro{display:grid;gap:clamp(2rem,5vw,4rem);align-items:center}.intro-copy .ornament{width:3rem;height:1px;background:var(--gold);margin:1.5rem 0}.intro-figure{position:relative;min-height:420px}.intro-figure img{width:100%;height:100%;min-height:420px;object-fit:cover}.intro-figure:after{content:"";position:absolute;top:1.25rem;right:-1.25rem;bottom:-1.25rem;left:1.25rem;border:1px solid var(--gold);pointer-events:none;z-index:-1}.services{background:linear-gradient(180deg,var(--marble-warm),var(--marble)),radial-gradient(circle at top right,rgba(196,160,106,.12),transparent 40%)}.services-header{margin-bottom:clamp(2.5rem,6vw,4rem)}.services-grid{display:grid;gap:0;border-top:1px solid var(--line)}.service-item{display:grid;gap:.65rem;padding:1.6rem 0;border-bottom:1px solid var(--line)}.service-item h3{margin:0;font-family:var(--font-display);font-size:1.7rem;font-weight:500}.service-item p{margin:0;color:var(--ink-soft);max-width:42rem}.aesthetics{background:linear-gradient(180deg,var(--marble),#faf7f2),radial-gradient(circle at left center,rgba(196,160,106,.14),transparent 45%)}.aesthetics-layout{display:grid;gap:clamp(2rem,5vw,3.5rem);align-items:center}.aesthetics-brand{display:grid;gap:1.25rem;justify-items:start}.aesthetics-logo{width:min(340px,88vw);height:auto;object-fit:contain}.aesthetics-copy .section-title{max-width:14ch}.aesthetics-copy .section-lead{max-width:38rem}.aesthetics-services{margin-top:2rem}.gallery-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem;align-items:end;margin-bottom:2.5rem}.gallery-mosaic{display:grid;gap:.85rem;grid-template-columns:1fr}.gallery-mosaic figure{margin:0;overflow:hidden;position:relative;min-height:260px}.gallery-mosaic img{width:100%;height:100%;min-height:260px;object-fit:cover;transition:transform .8s ease}.gallery-mosaic figure:hover img{transform:scale(1.04)}.gallery-mosaic figcaption{position:absolute;left:1rem;bottom:1rem;padding:.35rem .65rem;background:#1c12168c;color:var(--marble);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.reviews{background:var(--burgundy-deep);color:var(--marble)}.reviews .section-label{color:var(--gold-soft)}.reviews .section-lead{color:#f6f3eec7}.reviews-compact{display:grid;gap:1rem;margin-top:2rem}.google-summary{background:#fff;color:#202124;padding:.9rem 1.1rem;border-radius:12px;box-shadow:0 1px 2px #3c40432e,0 2px 8px #3c40431a}.google-summary-inline{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem 1.25rem}.google-summary-top{display:flex;align-items:center;gap:.45rem;font-size:.88rem;font-weight:500;color:#3c4043}.google-mark{width:1rem;height:1rem}.google-summary-score{display:flex;align-items:center;gap:.7rem}.google-summary-score strong{font-family:var(--font-body);font-size:2rem;font-weight:500;line-height:1;letter-spacing:-.03em;color:#202124}.google-summary-score p{margin:.1rem 0 0;color:#5f6368;font-size:.8rem}.reviews-link{display:inline-flex;width:fit-content;margin-left:auto;font-size:.82rem;font-weight:500;color:#1a73e8;letter-spacing:0;text-transform:none;border-bottom:none;padding-bottom:0}.reviews-link:hover{color:#174ea6;text-decoration:underline}.star-row{display:inline-flex;gap:.05rem;line-height:1}.star{color:#dadce0;font-size:.78rem}.star.on{color:#fbbc04}.star-row-lg .star{font-size:.95rem}.reviews-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.reviews-track{display:flex;width:max-content;gap:.75rem;animation:reviews-rtl 42s linear infinite}.reviews-marquee:hover .reviews-track{animation-play-state:paused}@keyframes reviews-rtl{0%{transform:translate(0)}to{transform:translate(-50%)}}.google-review{background:#fff;color:#202124;width:15.5rem;min-height:8.6rem;padding:.85rem .9rem .8rem;border-radius:10px;box-shadow:0 1px 2px #3c404329,0 1px 6px #3c404314;flex:0 0 auto}.google-review-head{display:flex;align-items:center;gap:.55rem;margin-bottom:.4rem}.google-review-head .google-avatar{width:1.85rem;height:1.85rem;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:500;font-size:.82rem;flex-shrink:0;line-height:1;margin-top:0}.google-review-head strong{display:block;font-size:.82rem;font-weight:500;color:#202124;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:10.5rem}.google-review-head div span{display:block;color:#5f6368;font-size:.7rem;margin-top:.05rem}.google-review .star-row{margin-bottom:.4rem}.google-review p{margin:0;color:#3c4043;font-size:.8rem;line-height:1.4;font-family:var(--font-body);font-style:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media(prefers-reduced-motion:reduce){.reviews-track{animation:none;flex-wrap:wrap;width:100%}.reviews-marquee{-webkit-mask-image:none;mask-image:none}}.cita{position:relative;overflow:hidden}.cita-shell{display:grid;gap:2rem;align-items:center;padding:clamp(2rem,5vw,3.5rem);background:linear-gradient(135deg,#5c1830f0,#3f0f20e6),url(/images/raquel-raya-exterior.webp) center/cover;color:var(--marble);box-shadow:var(--shadow)}.cita-shell .section-label{color:var(--gold-soft)}.cita-shell h2{color:var(--marble);max-width:14ch}.cita-shell p{color:#f6f3eedb;margin:0 0 1.5rem;max-width:34rem}.cita-actions{display:flex;flex-wrap:wrap;gap:.85rem}.whatsapp-icon{width:1.1rem;height:1.1rem;fill:currentColor}.location-grid{display:grid;gap:2.5rem}.hours-list{list-style:none;margin:1.5rem 0 0;padding:0;border-top:1px solid var(--line)}.hours-list li{display:flex;justify-content:space-between;gap:1rem;padding:.95rem 0;border-bottom:1px solid var(--line);font-size:.95rem}.hours-list span:last-child{color:var(--ink-soft);text-align:right}.contact-lines{display:grid;gap:1rem;margin-top:1.75rem}.contact-lines a,.contact-lines p{margin:0;color:var(--ink-soft)}.contact-lines strong{display:block;color:var(--ink);font-family:var(--font-display);font-size:1.35rem;font-weight:500;margin-bottom:.15rem}.directions-link{display:inline-flex;align-items:center;gap:.45rem;width:fit-content;margin-top:.35rem;padding:0;color:var(--burgundy)!important;font-size:.82rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid rgba(92,24,48,.28);padding-bottom:.25rem;transition:color .2s ease,border-color .2s ease,gap .2s ease}.directions-link:hover{color:var(--burgundy-deep)!important;border-bottom-color:var(--burgundy-deep);gap:.65rem}.map-frame{min-height:360px;background:var(--marble-warm);overflow:hidden}.map-frame iframe{width:100%;height:100%;min-height:360px;border:0;filter:grayscale(.15) contrast(1.05)}.social-links{display:flex;flex-wrap:wrap;gap:.75rem 1rem}.social-links a{display:inline-flex;align-items:center;gap:.4rem;color:var(--ink-soft);font-size:.92rem;transition:color .2s ease}.social-links a:hover{color:var(--burgundy)}.social-icon{width:1.05rem;height:1.05rem}.social-links-footer a{color:var(--ink-soft)}.social-links-footer a:hover{color:var(--burgundy)}.footer{padding:2.5rem 0 3rem;border-top:1px solid var(--line)}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:center;color:var(--ink-soft);font-size:.9rem}.footer strong{color:var(--ink);font-family:var(--font-display);font-size:1.2rem;font-weight:500;font-style:italic}@media(min-width:720px){.nav-links{display:flex}.intro{grid-template-columns:1.05fr .95fr}.services-grid{grid-template-columns:1fr 1fr;column-gap:3rem}.aesthetics-layout{grid-template-columns:minmax(220px,.85fr) 1.15fr;column-gap:clamp(2rem,5vw,4rem)}.aesthetics-services{grid-template-columns:1fr}.gallery-mosaic{grid-template-columns:1.2fr .8fr;grid-template-rows:280px 280px}.gallery-mosaic figure:first-child{grid-row:1 / span 2;min-height:100%}.gallery-mosaic figure:first-child img{min-height:100%}.location-grid{grid-template-columns:.9fr 1.1fr;align-items:stretch}}@media(min-width:980px){.gallery-mosaic{grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:240px 240px}.gallery-mosaic figure:nth-child(2){grid-column:2}.gallery-mosaic figure:nth-child(3){grid-column:3}.gallery-mosaic figure:nth-child(4){grid-column:2 / span 2}}
