*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--hc-champagne:#E8DCC8;--hc-blush:#E8B4B8;--hc-espresso:#3D2314;--hc-cream:#FBF7F0;--hc-serif:'Playfair Display',serif;--hc-sans:'Quicksand',sans-serif}
html{scroll-behavior:smooth}
body.hc-body{font-family:var(--hc-sans);background:var(--hc-cream);color:var(--hc-espresso);line-height:1.6}
.hc-lookbook-hero{min-height:85vh;display:grid;grid-template-columns:1.2fr 1fr;position:relative;overflow:hidden}
.hc-hero-art{background:linear-gradient(160deg,var(--hc-blush) 0%,var(--hc-champagne) 40%,#d4a574 70%,var(--hc-espresso) 100%);position:relative}
.hc-hero-art::after{content:'';position:absolute;inset:20% 10%;background:radial-gradient(ellipse at 30% 40%,rgba(255,255,255,.3),transparent 60%);border-radius:50%}
.hc-hero-text{display:flex;flex-direction:column;justify-content:center;padding:3rem;background:var(--hc-cream)}
.hc-issue{font-size:.75rem;text-transform:uppercase;letter-spacing:.25em;color:var(--hc-blush);margin-bottom:1rem}
.hc-hero-text h1{font-family:var(--hc-serif);font-size:clamp(2.5rem,6vw,4rem);font-weight:700;line-height:1.1;margin-bottom:1rem;font-style:italic}
.hc-tagline{font-size:1.1rem;color:#6b5344}
.hc-services-scroll{padding:4rem 0 3rem;overflow:hidden}
.hc-services-scroll h2{font-family:var(--hc-serif);font-size:1.75rem;text-align:center;margin-bottom:2rem;padding:0 1.5rem}
.hc-scroll-track{display:flex;gap:1.5rem;overflow-x:auto;padding:1rem 1.5rem 2rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--hc-blush) transparent}
.hc-scroll-track::-webkit-scrollbar{height:6px}
.hc-scroll-track::-webkit-scrollbar-thumb{background:var(--hc-blush);border-radius:3px}
.hc-look-card{flex:0 0 260px;scroll-snap-align:start;background:#fff;padding:2rem;border:1px solid var(--hc-champagne);position:relative}
.hc-num{font-family:var(--hc-serif);font-size:3rem;color:var(--hc-blush);opacity:.4;position:absolute;top:.5rem;right:1rem;line-height:1}
.hc-look-card h3{font-family:var(--hc-serif);font-size:1.25rem;margin-bottom:.75rem;margin-top:1rem}
.hc-look-card p{font-size:.9rem;color:#6b5344;line-height:1.6}
.hc-stylists{padding:3rem 1.5rem;max-width:640px;margin:0 auto;text-align:center}
.hc-stylists h2{font-family:var(--hc-serif);font-size:1.75rem;margin-bottom:1rem}
.hc-stylists-intro{margin-bottom:2rem;font-size:1rem;line-height:1.7}
.hc-vibe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}
.hc-vibe-item{padding:1.25rem;border-top:2px solid var(--hc-blush)}
.hc-vibe-item strong{display:block;font-family:var(--hc-serif);font-size:1.1rem;margin-bottom:.25rem}
.hc-vibe-item span{font-size:.8rem;color:#6b5344}
.hc-address,.hc-phone{font-size:.9rem;margin-top:.5rem}
.hc-phone a{color:var(--hc-espresso);font-weight:600;text-decoration:none}
.hc-booking{padding:3rem 1.5rem;background:linear-gradient(180deg,var(--hc-champagne),var(--hc-cream));max-width:520px;margin:0 auto}
.hc-booking h2{font-family:var(--hc-serif);font-size:1.5rem;margin-bottom:1.5rem;text-align:center}
.hc-form{display:grid;gap:1rem}
.hc-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500}
.hc-form input,.hc-form textarea{padding:.85rem;border:1px solid var(--hc-champagne);background:#fff;font-family:var(--hc-sans);font-size:1rem;border-radius:0}
.hc-check{flex-direction:row!important;align-items:flex-start;font-weight:400!important}
.hc-check input{width:auto;margin-right:.5rem;margin-top:.15rem}
.hc-form button{background:var(--hc-espresso);color:var(--hc-cream);border:none;padding:1rem;font-family:var(--hc-sans);font-weight:600;font-size:1rem;cursor:pointer;letter-spacing:.05em}
.hc-form button:hover{background:#2a1810}
.hc-success{color:#2a6;font-weight:600;text-align:center}
.hc-form .hc-error{color:#c00;font-size:.8rem;font-weight:400}
.hc-footer{text-align:center;padding:2.5rem 1.5rem;border-top:1px solid var(--hc-champagne)}
.hc-footer nav{display:flex;justify-content:center;gap:2rem;margin-bottom:1rem;flex-wrap:wrap}
.hc-footer a{color:var(--hc-espresso);text-decoration:none;font-size:.9rem}
.hc-legal{max-width:520px;margin:0 auto 2rem;padding:1.5rem;display:none;font-size:.9rem}
.hc-legal:target{display:block;background:#fff;border:1px solid var(--hc-champagne)}
.hc-legal h3{font-family:var(--hc-serif);margin-bottom:.75rem}
@media(max-width:640px){
  .hc-lookbook-hero{grid-template-columns:1fr;min-height:auto}
  .hc-hero-art{min-height:40vh}
  .hc-vibe-grid{grid-template-columns:1fr}
}
