
:root{--green:#285b32;--deep:#163c25;--gold:#b28b4d;--ivory:#fbf8f1;--sand:#efe8da;--ink:#26332b;--muted:#68716a;--line:#ddd3c0}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Montserrat,Arial,sans-serif;line-height:1.65}a{text-decoration:none;color:inherit}.container{width:min(1240px,92%);margin:auto}
.nav{position:sticky;z-index:50;top:0;background:rgba(251,248,241,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(40,91,50,.10)}.navin{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.logo{width:190px}.navlinks{display:flex;align-items:center;gap:25px;font-size:10px;letter-spacing:.13em;text-transform:uppercase}
.navlinks a,
.nav-service-toggle{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;text-transform:uppercase;}.navlinks a{padding:28px 0;border-bottom:2px solid transparent}.navlinks a:hover,.navlinks a.active{color:var(--gold);border-bottom-color:var(--gold)}.navbook{background:var(--green);color:#fff;padding:12px 18px;border-radius:3px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.hero-grid{min-height:650px;display:grid;grid-template-columns:.78fr 1.22fr}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px 55px 80px 0}.eyebrow,.kicker{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:500}.hero h1{font:500 clamp(56px,7vw,92px)/.84 'Cormorant Garamond',serif;color:var(--deep);margin:18px 0}.hero h1 em{font-weight:400;color:var(--gold);font-style:italic}.hero-lead{font-size:16px;max-width:480px;color:#5d675f}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 21px;border:1px solid var(--green);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.btn.primary{background:var(--green);color:#fff}.btn.secondary{color:var(--green)}.hero-photo{position:relative;min-height:650px;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover}.promo{position:absolute;right:28px;top:34px;width:155px;height:185px;background:rgba(251,248,241,.95);border:1px solid rgba(178,139,77,.55);display:flex;align-items:center;justify-content:center;text-align:center;box-shadow:0 18px 40px rgba(30,50,35,.15)}.promo .small{font-size:9px;letter-spacing:.14em;text-transform:uppercase}.promo strong{display:block;font:500 48px/1 'Cormorant Garamond',serif;color:var(--gold);margin:10px 0}.promo span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--deep)}
.trustbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}.trustbar div{padding:18px 15px;text-align:center;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--deep);border-right:1px solid var(--line)}.trustbar div:last-child{border:0}
section{padding:95px 0}.intro{text-align:center;max-width:780px;margin:0 auto 55px}.intro h2,.section-copy h2{font:500 clamp(45px,6vw,70px)/.95 'Cormorant Garamond',serif;color:var(--deep);margin:14px 0 20px}.intro p,.section-copy p{color:var(--muted);font-size:15px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.image{width:100%;display:block;object-fit:cover}.image.landscape{aspect-ratio:4/3}.section-copy{max-width:560px}.rule{height:1px;background:var(--line);margin:28px 0}
.services{background:var(--sand)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{background:#fff;border:1px solid #e1d8c7;transition:transform .35s,box-shadow .35s}.service-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(27,57,36,.10)}.service-card img{width:100%;height:210px;object-fit:cover}.service-body{padding:25px}.service-body h3{font:500 31px/1 'Cormorant Garamond',serif;color:var(--deep);margin:0 0 10px}.service-body p{font-size:12px;color:var(--muted);min-height:78px;margin:0}.service-body a{display:inline-block;margin-top:18px;color:var(--green);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.page-hero{padding:78px 0 65px;background:var(--sand);border-bottom:1px solid var(--line)}.page-hero h1{font:500 clamp(55px,7vw,88px)/.9 'Cormorant Garamond',serif;color:var(--deep);margin:12px 0}.page-hero p{max-width:650px;color:var(--muted);font-size:15px}.crumb{font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:var(--gold)}
.treatment-list{margin-top:30px;border-top:1px solid var(--line)}.treatment{display:grid;grid-template-columns:1fr auto;gap:25px;padding:27px 0;border-bottom:1px solid var(--line)}.treatment h3{font:500 28px/1 'Cormorant Garamond',serif;color:var(--deep);margin:0 0 7px}.treatment p{margin:0;color:var(--muted);font-size:12px;max-width:680px}.duration{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--gold);white-space:nowrap}.price{font:500 30px/1 'Cormorant Garamond',serif;color:var(--deep);white-space:nowrap;margin-top:5px}
.nails{background:#f6f1e7}.nail-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.nail-photo img{width:100%;height:560px;object-fit:cover}.cuccio-badge{background:rgba(251,248,241,.95);padding:18px 22px;border-left:3px solid var(--gold);margin-top:-75px;position:relative;margin-left:25px;width:max-content;max-width:85%}.cuccio-badge strong{display:block;font:500 25px/1 'Cormorant Garamond',serif;color:var(--deep)}.nail-groups{display:grid;grid-template-columns:1fr 1fr;gap:22px}.nail-group{border-top:1px solid var(--line);padding-top:16px}.nail-group h3{font:500 23px/1.05 'Cormorant Garamond',serif;color:var(--deep);margin:0 0 10px}.nail-group p{font-size:11px;color:var(--muted);margin:0 0 12px}
.gallery{background:var(--sand)}.gallery-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px}.gallery-main{min-height:620px}.gallery-main img,.gallery-side img{width:100%;height:100%;object-fit:cover}.gallery-side{display:grid;grid-template-rows:1fr 1fr;gap:16px}
.visit{background:var(--deep);color:#fff}.visit .section-copy h2{color:#fff}.visit .section-copy p{color:#d5ded6}.contact-line{border-top:1px solid rgba(255,255,255,.2);padding:20px 0;margin-top:25px}.contact-line span{display:block;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#d9c79d;margin-bottom:4px}.map{min-height:470px;background:#d7d0bf url('assets/photos/location.jpg') center/cover;position:relative}.map:after{content:'Google Maps placeholder';position:absolute;left:20px;bottom:20px;background:rgba(251,248,241,.95);color:var(--deep);padding:13px 18px;font-size:10px;letter-spacing:.13em;text-transform:uppercase}
footer{background:#0d2918;color:#dce7de;padding:50px 0}.footbar{display:flex;justify-content:space-between;align-items:end;gap:30px}.footbar img{width:185px}.social{display:flex;gap:22px;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.wa{position:fixed;right:22px;bottom:22px;z-index:70;background:var(--green);color:#fff;padding:14px 19px;border-radius:999px;box-shadow:0 10px 35px rgba(0,0,0,.2);font-size:10px;letter-spacing:.11em;text-transform:uppercase}

/* Responsive pass v1.3 */
.menu-toggle{display:none}

@media(max-width:1100px){
.container{width:94%}.navin{min-height:76px}.navlinks{gap:15px;font-size:9px}
.hero-grid{grid-template-columns:1fr 1.05fr;min-height:590px}.hero-copy{padding:55px 35px 55px 0}.hero-photo{min-height:590px}
section{padding:78px 0}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card img{height:230px}
.split,.nail-layout{gap:45px}.nail-photo img{height:500px}.gallery-grid{grid-template-columns:1.1fr .9fr}.gallery-main{min-height:520px}
}
@media(max-width:850px){
.navin{position:relative}.navlinks{display:none;position:absolute;left:0;right:0;top:100%;padding:8px 5%;background:rgba(251,248,241,.99);border-bottom:1px solid var(--line);box-shadow:0 15px 30px rgba(20,45,28,.08);flex-direction:column;align-items:stretch;gap:0}
.navlinks.open{display:flex}.navlinks a{padding:14px 4px;border-bottom:1px solid rgba(221,211,192,.65)}.navlinks a:last-child{border-bottom:0}
.menu-toggle{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--line);background:transparent;color:var(--deep);cursor:pointer;margin-left:auto;margin-right:8px}.menu-toggle svg{width:20px;height:20px;display:block}
.hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{padding:58px 0 38px}.hero-photo{min-height:520px}
.trustbar{grid-template-columns:repeat(2,1fr)}.trustbar div:nth-child(2n){border-right:0}
.split,.nail-layout{grid-template-columns:1fr;gap:38px}.section-copy{max-width:none}.nail-photo img{height:auto;aspect-ratio:4/3}
.gallery-grid{grid-template-columns:1fr}.gallery-main{min-height:450px}.gallery-side{height:360px}
}
@media(max-width:680px){
.container{width:90%}.navin{min-height:68px}.logo{width:145px}.navbook{font-size:8px;padding:10px 11px}.menu-toggle{width:38px;height:38px}
.hero-copy{padding:46px 0 30px}.eyebrow,.kicker{font-size:8px;letter-spacing:.20em}.hero h1{font-size:clamp(50px,16vw,64px);line-height:.86;margin:15px 0}.hero-lead{font-size:14px}
.actions{gap:10px;margin-top:22px}.btn{width:100%;padding:14px 16px}.hero-photo{min-height:0;aspect-ratio:9/14}.promo{width:112px;height:132px;right:12px;top:12px}.promo strong{font-size:36px}
.trustbar{grid-template-columns:1fr 1fr}.trustbar div{padding:13px 7px;font-size:7px;line-height:1.35}
section{padding:64px 0}.intro{margin-bottom:35px}.intro h2,.section-copy h2{font-size:48px}.intro p,.section-copy p{font-size:13px}
.service-grid{grid-template-columns:1fr}.service-card img{height:auto;aspect-ratio:4/3}.service-body{padding:20px}.service-body p{min-height:0}
.page-hero{padding:50px 0 43px}.page-hero h1{font-size:56px}.page-hero p{font-size:13px}
.image.landscape{aspect-ratio:4/3}.nail-photo img{aspect-ratio:4/3;height:auto}.cuccio-badge{margin-left:12px;margin-top:-45px}
.nail-groups{grid-template-columns:1fr}.treatment{grid-template-columns:1fr;gap:10px}.treatment h3{font-size:25px}.treatment p{font-size:12px}.price{font-size:28px}
.gallery-main{min-height:0;aspect-ratio:4/5}.gallery-side{height:auto;grid-template-rows:auto}.gallery-side img{aspect-ratio:4/3}
.map,.map iframe{min-height:360px!important;height:360px!important}.faq-item summary{font-size:22px;padding:20px 2px}.faq-answer{font-size:12px;line-height:1.75;padding:0 5px 23px 2px}
.wa{right:12px;bottom:12px;padding:12px 15px;font-size:8px}footer{padding:40px 0}.footbar{align-items:flex-start;flex-direction:column}
}
@media(max-width:390px){.container{width:91%}.logo{width:132px}.navbook{display:none}.hero h1{font-size:50px}.hero-photo{aspect-ratio:9/15}.promo{width:98px;height:118px}.promo strong{font-size:32px}.intro h2,.section-copy h2{font-size:43px}}
.hero{padding-bottom:28px}
html,body{max-width:100%;overflow-x:hidden}img,iframe{max-width:100%}

/* v1.4 content/design refinements */
.hero h1 .gold{color:var(--gold)}
.service-card .service-body p{line-height:1.65}
.social-icons{margin-top:18px}
.footer-contact{font-size:10px;color:#b9c9bc;line-height:1.8;margin-top:12px}
.contact-methods{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.contact-methods .btn{width:auto}
@media(max-width:680px){.contact-methods .btn{width:100%}}

/* v1.5 */
.social-icons{display:flex;gap:9px;margin-top:18px;align-items:center}
.social-icon{width:28px;height:28px;border:1px solid rgba(220,231,222,.38);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff}
.social-icon:hover{background:var(--gold);border-color:var(--gold)}
.social-icon svg{width:14px;height:14px;display:block;fill:currentColor}
.faq-answer a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.header-contact{position:relative}
.contact-popover{display:none;position:absolute;right:0;top:calc(100% + 12px);width:310px;background:var(--ivory);border:1px solid var(--line);box-shadow:0 20px 45px rgba(15,45,25,.18);padding:24px;z-index:80}
.header-contact.open .contact-popover{display:block}
.contact-popover h3{font:500 28px/1 'Cormorant Garamond',serif;margin:0 0 7px;color:var(--deep)}
.contact-popover p{font-size:11px;color:var(--muted);margin:0 0 18px}
.contact-popover .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.contact-popover .contact-grid a{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);padding:12px 8px;color:var(--green);font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.contact-popover .contact-grid a:hover{background:var(--sand);border-color:var(--gold)}
.close-contact{position:absolute;right:10px;top:7px;border:0;background:none;color:var(--muted);font-size:20px;cursor:pointer}
.footer-contact-methods{display:flex;gap:15px;flex-wrap:wrap;margin-top:14px}
.footer-contact-methods a{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#dce7de}
.footer-contact-methods a:hover{color:#d9c79d}
@media(max-width:680px){.contact-popover{position:fixed;left:5%;right:5%;top:76px;width:auto}}

/* v1.6 — unified contact popup */
.contact-popover .contact-grid a{
  justify-content:flex-start;
  gap:10px;
  text-align:left;
}
.contact-popover .contact-grid a .contact-icon{
  width:18px;
  height:18px;
  flex:0 0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--green);
}
.contact-popover .contact-grid a .contact-icon svg{
  width:18px;
  height:18px;
  display:block;
  fill:currentColor;
}
.contact-popover .contact-grid a:hover .contact-icon{color:var(--gold)}
.contact-popover .contact-grid a span{line-height:1}

/* v1.7 homepage refinements */
.home-services-intro{padding-top:82px}
.editorial-services{display:flex;flex-direction:column}
.editorial-service{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:stretch;padding:78px 0;border-top:1px solid var(--line)}
.editorial-service:nth-child(even) .editorial-photo{order:2}
.editorial-service:nth-child(even) .editorial-copy{order:1}
.editorial-photo{display:flex;min-height:430px}
.editorial-photo img{width:100%;height:100%;min-height:430px;object-fit:cover}
.editorial-copy{display:flex;flex-direction:column;padding:28px 0}
.editorial-copy .btn{margin-top:auto;align-self:flex-start}
.nail-layout .cuccio-badge{position:relative;z-index:2;margin-bottom:18px}
@media(max-width:850px){
.editorial-service{grid-template-columns:1fr;gap:28px;padding:58px 0}
.editorial-service:nth-child(even) .editorial-photo{order:1}
.editorial-service:nth-child(even) .editorial-copy{order:2}
.editorial-photo,.editorial-photo img{min-height:0;height:auto;aspect-ratio:4/3}
.editorial-copy{padding:0}.editorial-copy .btn{margin-top:22px}
}

/* v1.8 — consolidated review + real photography */
.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:none;margin-left:auto;margin-right:auto}
.service-card{min-width:0}
.map:after{display:none}
.cuccio-badge{margin-top:18px;margin-left:25px;max-width:calc(100% - 25px)}
.contact-button-wrap{margin-top:28px}
.contact-button-wrap .btn{width:auto}
.home-services-intro .intro{margin-bottom:48px}
.nail-layout h2.nails-heading{font:500 clamp(48px,5.4vw,70px)/.95 'Cormorant Garamond',serif;color:var(--deep)}
@media(max-width:850px){.service-grid{grid-template-columns:1fr;max-width:620px}.cuccio-badge{margin-left:12px;max-width:calc(100% - 12px)}}


/* v2 deployment update: Services dropdown */
.nav-service-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.nav-service-toggle {
  appearance: none;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
  padding: 0;
}
.nav-service-toggle span {
  margin-left: 0.25rem;
  font-size: 0.8em;
}
.nav-service-menu {
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  transform: translateX(-50%);
  min-width: 170px;
  padding: 10px 0;
  display: none;
  z-index: 1000;
  background: #fff;
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
}
.nav-service-menu a {
  display: block;
  padding: 9px 18px;
  white-space: nowrap;
}
.nav-service-dropdown:hover .nav-service-menu,
.nav-service-dropdown:focus-within .nav-service-menu,
.nav-service-dropdown.is-open .nav-service-menu {
  display: block;
}
@media (max-width: 900px) {
  .nav-service-menu {
    position: static;
    transform: none;
    min-width: 0;
    padding: 0;
    box-shadow: none;
  }
}

/* v2.1 navigation refinement */
.nav-service-toggle{
  font-family:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
  letter-spacing:inherit;
  text-transform:uppercase;
  color:inherit;
  padding:28px 0;
  border:0;
  border-bottom:2px solid transparent;
  background:transparent;
  appearance:none;
}
.nav-service-toggle:hover,
.nav-service-dropdown:focus-within .nav-service-toggle{
  color:var(--gold);
  border-bottom-color:var(--gold);
}
.nav-service-toggle span{
  font-size:.8em;
  margin-left:.25rem;
}
.hero .eyebrow{
  white-space:nowrap;
}
@media(max-width:680px){
  .nav-service-toggle{
    width:100%;
    text-align:left;
    padding:14px 4px;
    border-bottom:1px solid rgba(221,211,192,.65);
  }
}
