@import url('https://fonts.googleapis.com/css2?family=Mrs+Saint+Delafield&family=DM+Sans:wght@300;400;500;600&family=Bodoni+Moda:ital,opsz,wght@0,6..96,400;0,6..96,500;1,6..96,400&family=Italiana&family=Manrope:wght@400;500;600&family=Italianno&display=swap');
:root{--ivory:#faf8f2;--paper:#fffefa;--ink:#40372e;--muted:#82756b;--gold:#a88c5c;--line:#e8dfd1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'DM Sans',sans-serif;font-weight:300;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{color:#a78b5d}button{font:inherit}img{display:block;width:100%;object-fit:cover}.topline{height:4px;background:linear-gradient(90deg,#d3b78c,#fff9eb,#d4d9ce,#f9f5ec,#c9a66e)}.nav{position:sticky;top:0;z-index:20;background:rgba(255,253,248,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-inner{max-width:1360px;margin:auto;min-height:91px;padding:12px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px}.wordmark{display:inline-flex;flex-direction:column;line-height:.93;white-space:nowrap;color:#514234}.wordmark .line{font-family:'Italiana',serif;font-size:35px;letter-spacing:-1.8px}.wordmark .pearl{font-family:'Playfair Display',serif;font-style:italic;font-size:37px;margin-left:4px;letter-spacing:-2.6px;color:#a3875b}.wordmark small{font-family:'Manrope',sans-serif;font-size:8px;font-weight:600;letter-spacing:5px;margin-top:11px;text-align:center;color:#806c51}.links{display:flex;gap:31px;align-items:center}.links>a:not(.button){font-size:11px;letter-spacing:1.8px;text-transform:uppercase;font-weight:600}.button{display:inline-block;border:1px solid #9e8054;padding:13px 23px;background:#8e7551;color:white!important;text-transform:uppercase;font-size:10px;letter-spacing:2px;font-weight:600;transition:.2s}.button:hover{background:#6e5b41}.button.outline{background:transparent;color:#6e5b41!important}.menu{display:none;background:none;border:0;font-size:24px}.wrap{max-width:1230px;margin:auto;padding:0 5%}.eyebrow{text-transform:uppercase;letter-spacing:3.5px;font-size:10px;font-weight:600;color:#a18459}h1,h2,h3{font-family:'Italiana',serif;font-weight:400;line-height:1.12;letter-spacing:-1px;margin:12px 0 20px}h1{font-size:clamp(55px,7vw,110px)}h2{font-size:clamp(43px,5vw,74px)}h3{font-size:34px}h1 em,h2 em{font-family:'Playfair Display',serif;font-weight:400;color:#a4875e;letter-spacing:-2px}p{margin:0 0 20px}.muted{color:var(--muted)}.hero{display:grid;grid-template-columns:43% 57%;min-height:690px;background:linear-gradient(120deg,#fcfaf5 20%,#f5f0e7 60%,#faf8f2)}.hero-copy{padding:100px 6% 90px 12%;display:flex;flex-direction:column;justify-content:center}.hero-copy p{max-width:420px;color:#776a5f;font-size:15px}.hero-copy .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.hero-image{position:relative;overflow:hidden}.hero-image img{height:100%;min-height:690px;object-position:center}.hero-image:after{content:'';position:absolute;inset:0;border:18px solid rgba(255,255,255,.06);pointer-events:none}.hero-stamp{position:absolute;right:25px;bottom:25px;background:rgba(255,252,245,.9);padding:14px 20px;font:italic 17px 'Playfair Display',serif;color:#7b6244}.rule{height:1px;background:linear-gradient(90deg,transparent,#d8c5a5,transparent)}.intro{display:grid;grid-template-columns:1fr 1.1fr;gap:12%;padding-top:110px;padding-bottom:110px;align-items:center}.intro h2{max-width:500px}.intro p{font-size:15px}.photo-frame{position:relative;padding:22px;background:linear-gradient(130deg,#fffdf7,#e8ddc9,#f7f5ef,#dfd3bd)}.photo-frame img{aspect-ratio:4/4.2}.small-note{font:italic 18px 'Playfair Display',serif;color:#987d54;margin-top:18px}.spa{background:#eee8dc;padding:100px 0}.spa-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:center}.spa-photo img{aspect-ratio:5/4;object-position:center}.spa p{max-width:450px}.section{padding-top:100px;padding-bottom:100px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:35px}.service-line{display:grid;grid-template-columns:90px 1fr 1.2fr;gap:24px;align-items:baseline;border-top:1px solid var(--line);padding:24px 0}.service-line:last-child{border-bottom:1px solid var(--line)}.service-line .num{font:italic 16px 'Playfair Display',serif;color:#a78d68}.service-line h3{margin:0;font-size:32px}.service-line p{font-size:13px;color:#82756b;margin:0}.social{background:linear-gradient(135deg,#fbf8f1,#f0ebdf 48%,#fbfaf6);padding:95px 0}.social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:30px}.social-grid img{aspect-ratio:1/1}.social-tile{position:relative;overflow:hidden}.social-tile img{transition:transform .4s}.social-tile:hover img{transform:scale(1.04)}.social-caption{font-size:12px;color:var(--muted);margin-top:10px}.visit-strip{text-align:center;padding:95px 20px}.visit-strip p{color:#766b5e}.footer{background:#eae2d4;padding:50px 5% 22px}.footer-inner{max-width:1230px;margin:auto;display:flex;justify-content:space-between;gap:30px;align-items:start}.footer p{font-size:12px;color:#756859}.footer .wordmark .line{font-size:30px}.footer .wordmark .pearl{font-size:32px}.footer .links{gap:18px;flex-wrap:wrap}.copyright{text-align:center;border-top:1px solid #d8cbb8;margin-top:36px;padding-top:18px;font-size:10px;letter-spacing:1px;color:#897a65}.page-hero{text-align:center;padding:100px 20px 75px;background:radial-gradient(ellipse at 30% 20%,#fffefa,#f3eee4 70%,#eee6d9)}.page-hero h1{font-size:clamp(55px,7vw,90px)}.page-hero p{color:#85776b}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:50px;border-bottom:1px solid var(--line);padding:45px 0}.service-detail h2{font-size:48px;margin:0 0 12px}.examples{font-size:12px;letter-spacing:.4px;color:#a08259}.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.gallery-grid img{height:100%;min-height:330px}.gallery-grid .tile:first-child{grid-row:span 2}.gallery-grid .tile:first-child img{min-height:680px}.tile{overflow:hidden;background:#eee7d9}.tile .gallery-note{padding:16px;font-size:12px;color:#7c6d5a}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;padding-top:90px;padding-bottom:90px}.detail{padding:19px 0;border-bottom:1px solid var(--line);font-size:15px}.detail strong{display:block;text-transform:uppercase;font-size:10px;letter-spacing:2px;color:#a1855b;margin-bottom:5px}.booking{background:#f0eadf;padding:32px;border:1px solid #e1d4bf}.booking-embed{min-height:210px;background:#fffcf7;margin-top:25px;padding:16px;overflow:hidden}.booking-note{font-size:12px;color:#7e7060;margin-top:18px}.mobile-links{display:none}@media(max-width:850px){.menu{display:block}.links{display:none}.mobile-links.open{display:flex;flex-direction:column;gap:18px;padding:24px 6%;border-top:1px solid var(--line);background:#fffcf7}.mobile-links a{text-transform:uppercase;font-size:12px;letter-spacing:2px}.nav-inner{min-height:78px}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7% 60px}.hero-image img{min-height:420px;max-height:620px}.intro,.spa-grid,.contact-grid{grid-template-columns:1fr;gap:38px}.intro{padding-top:65px;padding-bottom:65px}.spa,.section,.social{padding-top:65px;padding-bottom:65px}.service-line{grid-template-columns:36px 1fr;gap:12px}.service-line p{grid-column:2}.section-head{align-items:start;flex-direction:column}.footer-inner{flex-direction:column}.footer .links{display:flex}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .tile:first-child{grid-row:span 1;grid-column:span 2}.gallery-grid .tile:first-child img{min-height:300px}.gallery-grid img{min-height:240px}.social-grid{grid-template-columns:1fr 1fr}.social-grid .social-tile:last-child{display:none}}@media(max-width:480px){.wordmark .line{font-size:30px}.wordmark .pearl{font-size:32px}.hero-copy h1{font-size:58px}.hero-stamp{font-size:13px}.social-grid{grid-template-columns:1fr 1fr}.booking{padding:18px}.page-hero{padding:70px 20px 50px}}
/* Ivory Pearl signature editorial typography refresh */
:root{--ivory:#fcfaf6;--paper:#fffdf9;--ink:#43372f;--muted:#817366;--gold:#a98a59;--line:#e8e0d5}
body{background:linear-gradient(130deg,#fffefa 0%,#fcfaf6 36%,#f8f4ed 70%,#fffdf9 100%)}
.wordmark{position:relative;min-width:165px;align-items:flex-start;line-height:1}
.wordmark>span{display:flex;align-items:baseline;gap:1px}
.wordmark .line{font-family:'Bodoni Moda',serif;font-weight:400;letter-spacing:2.5px;font-size:26px}
.wordmark .pearl{font-family:'Italianno',cursive;font-style:normal;font-size:58px;letter-spacing:-1px;line-height:.6;margin-left:-5px;color:#9f7d4f;transform:translateY(8px) rotate(-4deg)}
.wordmark small{font-family:'DM Sans',sans-serif;letter-spacing:4.6px;margin-top:14px;font-size:8px;padding-left:12px}
h1,h2,h3{font-family:'Bodoni Moda',serif;letter-spacing:-2px}
h1 em,h2 em{font-family:'Italianno',cursive;font-style:normal;font-weight:400;letter-spacing:0;color:#9e7d52;line-height:.8;display:inline-block}
h1 em{font-size:1.28em}h2 em{font-size:1.23em}
.hero-copy h1{line-height:1.12}.hero-copy h1 em{margin-top:14px;white-space:nowrap}
.hero-stamp,.small-note{font-family:'Italianno',cursive!important;font-size:33px!important;font-style:normal!important;letter-spacing:.2px}
.photo-frame{background:linear-gradient(145deg,#fffdf8,#efe5d5 40%,#fbf9f4 75%,#e3d5bd);padding:15px 15px 6px}
.photo-frame img{aspect-ratio:4/4.3;object-position:center}
.concept-note{font-size:10px;color:#8b7c6c;letter-spacing:.5px;margin:0 0 12px}
.spa{background:linear-gradient(115deg,#f1e9dd,#fffdf8 52%,#eae0cf)}
.spa-photo img{aspect-ratio:5/4.2}
.hero{background:linear-gradient(135deg,#fffefa 5%,#f6f0e7 68%,#fdfaf3)}
.page-hero{background:radial-gradient(ellipse at 25% 20%,#fffefa,#f8f3e9 70%,#eee6d9)}
.footer{background:#f1e9dd}.footer .wordmark .line{font-size:23px}.footer .wordmark .pearl{font-size:49px}
@media(max-width:750px){.wordmark .line{font-size:22px}.wordmark .pearl{font-size:48px}.hero-copy h1 em{white-space:normal}.hero-stamp{font-size:26px!important}}

/* Ivory Pearl custom signature artwork: preserves the approved Y flourish */
.wordmark{align-items:center;justify-content:center;line-height:1;gap:0;flex-shrink:0}
.wordmark .brand-logo{display:block;width:245px;height:auto;mix-blend-mode:multiply;object-fit:contain}
.wordmark .brand-subtitle{display:block;font:600 8px/1.2 'Manrope',sans-serif;letter-spacing:4.5px;color:#9a805c;margin-top:-2px;padding-left:5px}
.footer .wordmark .brand-logo{width:255px}
.footer .wordmark .brand-subtitle{font-size:8px}
.nav-inner{min-height:105px}
.contact-list{margin-top:25px;border-top:1px solid var(--line)}
.contact-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:17px;padding:24px 0;border-bottom:1px solid var(--line);align-items:start}
.contact-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid #dcc8a7;border-radius:50%;background:#fffcf6;color:#9e8054}
.contact-icon svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;fill:none}
.contact-label{display:block;text-transform:uppercase;font-size:10px;letter-spacing:2.2px;color:#a1855b;font-weight:700;margin:1px 0 8px}
.contact-value{display:block;font:400 19px/1.5 'DM Sans',sans-serif;letter-spacing:-.4px;color:#4a3b30}
.contact-phone{font-size:23px}
.contact-hint{font-size:12px;color:#88786b;margin-top:5px}
.contact-link{display:inline-block;margin-top:10px;font-size:12px;letter-spacing:.4px;color:#947348;border-bottom:1px solid #c8ae8a}
.contact-social{font-size:17px}
.hours-container{min-width:0}
.hours-row{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #ece3d6;font-size:19px;line-height:1.45}
.hours-row:last-child{border-bottom:0}
.hours-row strong{font-weight:500;color:#65503b;white-space:nowrap}
@media(max-width:850px){.nav-inner{min-height:90px}.wordmark .brand-logo{width:210px}.footer .wordmark .brand-logo{width:240px}}
@media(max-width:480px){.wordmark .brand-logo{width:183px}.wordmark .brand-subtitle{font-size:7px;letter-spacing:3px}.hours-row{gap:10px;font-size:16px}}

/* November refinement: transparent artwork, no decorative image captions, no script typography */
.wordmark .brand-logo{mix-blend-mode:normal!important;width:250px;height:auto;object-fit:contain}
.wordmark .brand-subtitle{display:none!important} /* approved artwork includes NAILS & SPA */
.footer .wordmark .brand-logo{width:270px}
h1 em,h2 em,.signature-headline{font-family:'Bodoni Moda', 'Times New Roman', serif!important;font-style:italic!important;font-weight:400!important;letter-spacing:-2.5px!important;line-height:1.1!important;display:inline!important;color:#94764f!important}
.hero-stamp,.small-note,.gallery-note{display:none!important}
@media(max-width:850px){.wordmark .brand-logo{width:210px}.footer .wordmark .brand-logo{width:235px}}
@media(max-width:480px){.wordmark .brand-logo{width:180px}}

/* Modern handwritten signature accents inspired by the approved Mirage reference. */
h1 em,h2 em,.signature-headline {
  font-family:'Mrs Saint Delafield', 'Brush Script MT', cursive !important;
  font-style:normal !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  line-height:.83 !important;
  color:#98734b !important;
  display:inline-block !important;
  text-transform:none;
}
h1 em,.hero-copy h1 em{font-size:1.25em !important;white-space:normal;margin-top:20px}
h2 em{font-size:1.28em !important}
.hero-copy h1{line-height:1.06}
@media(max-width:650px){h1 em,.hero-copy h1 em{font-size:1.16em !important}h2 em{font-size:1.18em !important}}


/* Refined November 2026 typography: optical size and baseline balancing */
h1,h2{font-family:'Bodoni Moda',serif; font-weight:400;letter-spacing:-.045em}
.page-hero h1{font-size:clamp(49px,6vw,76px)!important}
.hero-copy h1{font-size:clamp(52px,6.5vw,88px)!important}
h2{font-size:clamp(40px,4.5vw,65px)!important}
h1 em,h2 em,.signature-headline{font-family:'Mrs Saint Delafield','Brush Script MT',cursive!important;font-weight:400!important;font-style:normal!important;letter-spacing:0!important;color:#9a754b!important;line-height:.7!important;display:inline-block!important;vertical-align:-.075em!important;transform:translateY(.04em);white-space:normal;margin:0!important}
h1 em,.hero-copy h1 em{font-size:1.65em!important}
h2 em{font-size:1.65em!important}
.hero-copy h1,.page-hero h1{line-height:1.24!important}
h2{line-height:1.28!important}
@media(max-width:650px){h1 em,.hero-copy h1 em{font-size:1.43em!important}h2 em{font-size:1.45em!important}.hero-copy h1{font-size:clamp(48px,10vw,64px)!important}}
/* Editorial service menu: each treatment is prominent, not a tiny inline list */
.menu-jump{max-width:1130px;margin:0 auto;padding:20px 5%;display:flex;gap:9px 24px;justify-content:center;flex-wrap:wrap;border-bottom:1px solid var(--line)}
.menu-jump a{font-size:11px;letter-spacing:1.1px;text-transform:uppercase;color:#8e744e;font-weight:600;padding:8px 0;border-bottom:1px solid transparent}
.menu-jump a:hover{border-bottom-color:#b99d71}
.service-detail{grid-template-columns:minmax(230px,.82fr) minmax(0,1.18fr);gap:clamp(30px,7vw,95px);padding:68px 0;align-items:start;scroll-margin-top:125px}
.service-detail h2{font-size:clamp(36px,4vw,54px);line-height:1.12;letter-spacing:-1.5px}
.service-detail .muted{font-size:14px;line-height:1.9;margin-bottom:27px;max-width:590px}
.service-menu-list{list-style:none;padding:0;margin:0;border-top:1px solid #ded0bb;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px}
.service-menu-list li{position:relative;display:flex;align-items:center;min-height:64px;padding:15px 0 15px 19px;border-bottom:1px solid #e6dbca;font:500 clamp(14px,1.35vw,17px)/1.45 'DM Sans',sans-serif;letter-spacing:.1px;color:#493b30}
.service-menu-list li:before{content:'';width:5px;height:5px;border-radius:50%;background:#b49a70;position:absolute;left:1px;top:calc(50% - 2.5px)}
.service-detail:nth-of-type(odd) .service-menu-list{border-top-color:#c5ab85}
@media(max-width:850px){.service-detail{grid-template-columns:1fr;gap:15px;padding:48px 0}.service-detail .muted{max-width:100%}}
@media(max-width:520px){.service-menu-list{grid-template-columns:1fr}.service-menu-list li{min-height:54px}.menu-jump{justify-content:flex-start;gap:4px 16px}}

/* FINAL OPTICAL TYPE SYSTEM — one shared baseline, no inherited transforms */
h1.mixed-heading,h2.mixed-heading{font-family:'Bodoni Moda',serif!important;font-weight:400!important;letter-spacing:-.045em!important;line-height:1.27!important;text-wrap:balance}
h1.mixed-heading em,h2.mixed-heading em,h1.mixed-heading .signature-headline{font-family:'Mrs Saint Delafield',cursive!important;font-weight:400!important;font-style:normal!important;color:#9a754b!important;letter-spacing:0!important;display:inline!important;vertical-align:baseline!important;transform:none!important;line-height:inherit!important;white-space:normal!important;margin:0!important;font-size:1.36em!important}
/* Inline phrases: consistent optical alignment, never oversized or floated */
.page-hero h1.mixed-heading{font-size:clamp(46px,5.4vw,74px)!important}
.hero-copy h1.mixed-heading{font-size:clamp(49px,5.7vw,83px)!important}
h2.mixed-heading{font-size:clamp(40px,4.1vw,62px)!important}
/* Intentional second line for spa and intro; script reads as one uninterrupted phrase */
.mixed-heading.has-break{line-height:1.28!important}
.mixed-heading.has-break em{display:inline-block!important;line-height:1.06!important;font-size:1.37em!important;vertical-align:baseline!important}
/* Service menu: slim, editorial and easy to scan */
.service-detail{grid-template-columns:minmax(220px,.88fr) minmax(0,1.12fr)!important;gap:clamp(26px,5vw,70px)!important;padding:49px 0!important}
.service-detail h2{font-size:clamp(36px,3.7vw,49px)!important;line-height:1.16!important}
.service-detail .muted{margin-bottom:20px!important;line-height:1.75!important}
.service-menu-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:28px!important;border-top:1px solid #e1d7c8!important}
.service-menu-list li{min-height:45px!important;padding:9px 0!important;border-bottom:1px solid #ebe4d9!important;font-size:15px!important;font-weight:400!important;letter-spacing:.1px!important;color:#493b30!important}
.service-menu-list li:before{display:none!important}
.service-menu-list li span{display:block}
@media(max-width:850px){.service-detail{grid-template-columns:1fr!important;gap:13px!important}.service-menu-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){.service-menu-list{grid-template-columns:1fr!important}.service-menu-list li{min-height:43px!important}.page-hero h1.mixed-heading{font-size:clamp(42px,10vw,58px)!important}.hero-copy h1.mixed-heading{font-size:clamp(44px,10vw,61px)!important}h2.mixed-heading{font-size:clamp(38px,9vw,53px)!important}}
