:root{
  --ivory:#f4efe7;--cream:#fbf8f2;--beige:#e7ddd0;--taupe:#b7a99a;--espresso:#241b17;
  --brown:#5c463a;--line:rgba(36,27,23,.16);--white:#fffdf9;--max:1240px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--espresso);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.65}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}
.announcement{background:var(--espresso);color:#eee4d8;text-align:center;font-size:10px;letter-spacing:.18em;text-transform:uppercase;padding:9px 20px}.announcement span{margin:0 9px;color:#c9ae8f}
.site-header{height:92px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(251,248,242,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{font-family:"Playfair Display",serif;font-size:25px;letter-spacing:-.08em;border-right:1px solid var(--line);padding-right:12px}.brand-mark span{font-style:italic;font-size:16px}.brand-name{font-family:"Playfair Display",serif;font-size:16px;line-height:1.1}.brand-name small{display:block;font-family:"DM Sans",sans-serif;font-size:7px;letter-spacing:.24em;margin-top:5px}
.nav{display:flex;align-items:center;gap:30px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.nav a{position:relative}.nav a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--espresso);transition:.3s}.nav a:not(.nav-cta):hover:after{width:100%}.nav-cta{padding:12px 18px;background:var(--espresso);color:var(--white)}.menu-toggle{display:none;background:none;border:0;width:42px}.menu-toggle span{display:block;height:1px;background:var(--espresso);margin:7px 0}
.hero{height:calc(100vh - 128px);min-height:650px;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#7e6759}.hero-image{position:absolute;inset:0;background:url("https://images.unsplash.com/photo-1487412720507-e7ab37603c6f?auto=format&fit=crop&w=2200&q=88") center 30%/cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,17,14,.78),rgba(24,17,14,.28) 58%,rgba(24,17,14,.15))}.hero-content{position:relative;color:var(--white);padding:0 7vw 10vh;max-width:900px}.eyebrow{font-size:10px;letter-spacing:.25em;text-transform:uppercase;margin:0 0 22px;color:#d9c7b4}.eyebrow.dark{color:#826b5c}.hero h1{font:600 clamp(55px,8vw,112px)/.94 "Playfair Display",serif;letter-spacing:-.045em;margin:0}.hero h1 em,.display em{font-weight:500;font-style:italic}.hero-copy{font-size:18px;max-width:430px;color:#eee4da;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:28px}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;border:1px solid transparent;padding:15px 22px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;transition:.3s}.button span,.text-link span{transition:.3s}.button:hover span,.text-link:hover span{transform:translate(4px,-3px)}.button-light{background:var(--white);color:var(--espresso)}.button-light:hover{background:#eadbc8}.button-dark{background:var(--espresso);color:var(--white)}.button-dark:hover{background:#4b372d}.button-outline-light{border-color:#d9c8b8;color:var(--white)}.button-outline-light:hover{background:var(--white);color:var(--espresso)}.text-link{font-size:11px;letter-spacing:.13em;text-transform:uppercase;display:inline-flex;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:6px}.text-link.light{color:var(--white);border-color:rgba(255,255,255,.45)}.hero-caption{position:absolute;right:4vw;bottom:5vh;color:#e8ddd2;font-size:9px;letter-spacing:.3em;text-transform:uppercase;writing-mode:vertical-rl}
.section{max-width:var(--max);margin:auto;padding:130px 5vw}.intro{padding-top:150px;padding-bottom:130px}.section-kicker{font-size:9px;letter-spacing:.25em;color:#80695b;margin-bottom:55px}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw}.display{font:600 clamp(42px,5vw,72px)/1.02 "Playfair Display",serif;letter-spacing:-.035em;margin:0}.intro-copy{max-width:470px;align-self:end}.intro-copy p{font-size:18px;color:#6c5c51;margin:0 0 32px}
.section-head{display:grid;grid-template-columns:1fr .55fr;gap:8vw;align-items:end;margin-bottom:70px}.section-head>p{color:#78695f;margin:0;max-width:390px;font-size:14px}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:70px 26px}.service-card{border-top:1px solid var(--line);padding-top:16px}.service-photo{height:410px;background-size:cover;background-position:center;filter:saturate(.85)}.photo-hair{background-image:url("https://images.unsplash.com/photo-1562322140-8baeececf3df?auto=format&fit=crop&w=1100&q=82")}.photo-nails{background-image:url("https://images.unsplash.com/photo-1604654894610-df63bc536371?auto=format&fit=crop&w=1100&q=82")}.photo-skin{background-image:url("https://images.unsplash.com/photo-1570172619644-dfd03ed5d881?auto=format&fit=crop&w=1100&q=82")}.photo-makeup{background-image:url("https://images.unsplash.com/photo-1596462502278-27bfdc403348?auto=format&fit=crop&w=1100&q=82")}.photo-lashes{background-image:url("https://images.unsplash.com/photo-1512496015851-a90fb38ba796?auto=format&fit=crop&w=1100&q=82")}.photo-body{background-image:url("https://images.unsplash.com/photo-1544161515-4ab6ce6db874?auto=format&fit=crop&w=1100&q=82")}.service-info{display:grid;grid-template-columns:42px 1fr auto;gap:10px 15px;padding-top:22px;align-items:start}.service-info>span,.feature>span{font-size:9px;letter-spacing:.18em;color:#917b6b}.service-info h3{font:500 31px "Playfair Display",serif;margin:0}.service-info p{grid-column:2/4;color:#76675d;font-size:13px;max-width:440px;margin:4px 0 12px}.service-info .text-link{grid-column:2/4;width:max-content}
.about{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;background:var(--ivory);max-width:none;padding-left:10vw;padding-right:10vw}.about-image{height:690px;background:url("https://images.unsplash.com/photo-1598440947619-2c35fc9aa908?auto=format&fit=crop&w=1400&q=85") center/cover}.about-copy{max-width:560px}.about-copy>p:not(.eyebrow){color:#6d5c51;font-size:15px;max-width:510px}.about-copy .button{margin-top:22px}
.signature{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw}.feature-list{border-top:1px solid var(--line)}.feature{display:grid;grid-template-columns:55px 1fr;border-bottom:1px solid var(--line);padding:29px 0;gap:10px}.feature h3{font:500 25px "Playfair Display",serif;margin:0 0 4px}.feature p{font-size:13px;color:#76675d;max-width:450px;margin:0}
.gallery{padding-bottom:150px}.gallery-grid{display:grid;grid-template-columns:1.1fr .8fr 1fr;grid-template-rows:270px 270px 210px;gap:15px}.gallery-item{border:0;padding:0;overflow:hidden;background:#ddd}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.6,.2,1);filter:saturate(.85)}.gallery-item:hover img{transform:scale(1.04)}.g1{grid-row:1/3}.g2{grid-column:2}.g3{grid-column:3;grid-row:1/3}.g4{grid-column:2;grid-row:2/4}.g5{grid-column:3;grid-row:3}.image-note{font-size:10px;color:#95867b;margin-top:16px}
.quote-section{background:var(--espresso);color:var(--white);padding:130px 6vw;text-align:center}.quote-inner{max-width:900px;margin:auto}.quote-mark{font:600 70px "Playfair Display",serif;color:#c9ab8c;height:60px}.quote-section blockquote{font:500 clamp(31px,4.5vw,58px)/1.12 "Playfair Display",serif;letter-spacing:-.025em;margin:0 auto 28px}.quote-name{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#c8b5a4}.quote-controls{display:flex;justify-content:center;gap:22px;align-items:center;margin-top:35px;color:#bba895;font-size:10px}.quote-controls button{border:1px solid #6f5b4d;background:none;color:var(--white);width:40px;height:40px}
.booking{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw}.booking-intro>p:not(.eyebrow){color:#76675d;max-width:390px;margin-top:30px}.booking-form{border-top:1px solid var(--line);padding-top:5px}.booking-form label{display:block;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#806c5e;padding:18px 0;border-bottom:1px solid var(--line)}input,select,textarea{width:100%;border:0;background:transparent;outline:0;color:var(--espresso);font-size:15px;letter-spacing:0;text-transform:none;padding:8px 0 0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:35px}.submit{margin-top:25px;width:100%}.form-note{font-size:10px;color:#8a7b70;text-align:center}
.contact{max-width:none;background:#31241f;padding:0 5vw}.contact-panel{max-width:1240px;margin:auto;padding:120px 0;color:var(--white)}.light-display{color:var(--white)}.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:70px 0 35px;border-top:1px solid #5d4b40}.contact-details span{font-size:9px;letter-spacing:.2em;color:#bfa993}.contact-details p{font:500 18px "Playfair Display",serif}.contact-actions{display:flex;gap:12px;flex-wrap:wrap}
.footer{background:#1e1714;color:#a99787;padding:55px 5vw;display:grid;grid-template-columns:1.4fr 1fr .7fr;gap:30px;align-items:start;font-size:11px}.footer-brand{color:var(--white)}.footer-links,.footer-social{display:flex;gap:20px;flex-wrap:wrap}.footer a:hover{color:var(--white)}.footer>p{grid-column:1/-1;border-top:1px solid #3d3029;padding-top:22px;margin:15px 0 0;color:#77675c;font-size:9px}
.lightbox{position:fixed;inset:0;background:rgba(15,10,8,.94);z-index:100;display:none;align-items:center;justify-content:center;padding:5vw}.lightbox.open{display:flex}.lightbox img{max-width:92vw;max-height:88vh;object-fit:contain}.lightbox-close{position:absolute;right:25px;top:15px;background:none;border:0;color:white;font-size:38px;font-weight:200}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:76px}.nav{position:absolute;top:76px;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);display:none;padding:25px 5vw;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu-toggle{display:block}.hero{height:calc(100svh - 110px);min-height:600px}.hero-content{padding:0 7vw 9vh}.hero-caption{display:none}.section{padding:95px 6vw}.intro-grid,.about,.signature,.booking{grid-template-columns:1fr;gap:55px}.section-head{grid-template-columns:1fr;gap:25px}.service-grid{gap:50px 18px}.service-photo{height:340px}.about{padding-left:6vw;padding-right:6vw}.about-image{height:540px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 220px 300px}.g1{grid-row:1/3}.g2{grid-column:2}.g3{grid-column:2;grid-row:2/4}.g4{grid-column:1;grid-row:3}.g5{display:none}.contact-details{grid-template-columns:1fr 1fr}.footer{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.announcement{font-size:8px}.brand-name{font-size:14px}.brand-name small{font-size:6px}.hero h1{font-size:52px}.hero-copy{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.service-grid{grid-template-columns:1fr}.service-photo{height:390px}.service-info{grid-template-columns:35px 1fr}.service-info p,.service-info .text-link{grid-column:2}.gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:420px 280px 350px 280px}.g1,.g2,.g3,.g4{grid-column:1;grid-row:auto}.g5{display:none}.contact-details{grid-template-columns:1fr}.contact-panel{padding:90px 0}.footer{grid-template-columns:1fr;gap:25px}.footer>p{grid-column:1}.form-row{grid-template-columns:1fr;gap:0}}

/* Reliable seven-image editorial gallery */
.gallery-seven{grid-template-columns:1.05fr .75fr 1fr;grid-template-rows:250px 270px 220px 250px}
.gallery-seven .g1{grid-column:1;grid-row:1/3}
.gallery-seven .g2{grid-column:2;grid-row:1}
.gallery-seven .g3{grid-column:3;grid-row:1/3}
.gallery-seven .g4{grid-column:2;grid-row:2/4}
.gallery-seven .g5{grid-column:1;grid-row:3/5}
.gallery-seven .g6{grid-column:3;grid-row:3}
.gallery-seven .g7{grid-column:2;grid-row:4}
.gallery-item{position:relative;isolation:isolate}
.gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(25,18,14,.58));z-index:1;pointer-events:none}
.gallery-item img{position:relative;z-index:0}
.gallery-label{position:absolute;left:18px;bottom:15px;color:#fffdf9;z-index:2;font-size:10px;letter-spacing:.17em;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.gallery-item.image-fallback{background:radial-gradient(circle at 30% 20%,#d9c7b4,#725d50 55%,#261b16)}
.gallery-item.image-fallback img{display:none}
.gallery-item.image-fallback .gallery-label::before{content:"Editorial visual · ";opacity:.65}
@media(max-width:900px){
  .gallery-seven{grid-template-columns:1fr 1fr;grid-template-rows:300px 230px 300px 230px}
  .gallery-seven .g1{grid-column:1;grid-row:1/3}
  .gallery-seven .g2{grid-column:2;grid-row:1}
  .gallery-seven .g3{grid-column:2;grid-row:2/4}
  .gallery-seven .g4{grid-column:1;grid-row:3}
  .gallery-seven .g5{grid-column:1;grid-row:4}
  .gallery-seven .g6{grid-column:2;grid-row:4}
  .gallery-seven .g7{display:none}
}
@media(max-width:600px){
  .gallery-seven{display:grid;grid-template-columns:1fr;grid-template-rows:420px 280px 360px 280px 360px 280px 360px}
  .gallery-seven .g1,.gallery-seven .g2,.gallery-seven .g3,.gallery-seven .g4,.gallery-seven .g5,.gallery-seven .g6,.gallery-seven .g7{grid-column:1;grid-row:auto;display:block}
}
