:root{--green-darkest:#1a2a1a;--green-dark:#2a3c2a;--green-mid:#3a4f3a;--green-accent:#4a6349;--gold-bright:#d4a843;--gold-light:#e8c96a;--gold-pale:#f0dea0;--gold-dark:#b08a30;--cream:#f5f0e0;--cream-dark:#e0d5c0}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--green-darkest);color:var(--cream);font-family:Cormorant Garamond,Georgia,serif;overflow-x:hidden}nav{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a2a1af2;border-bottom:1px solid #d4a84333;transition:all .4s;position:fixed;top:0;left:0;right:0}nav.scrolled{background:#1a2a1afa;box-shadow:0 4px 30px #0006}.nav-inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:12px 30px;display:flex}.nav-logo{color:var(--gold-bright);letter-spacing:3px;text-transform:uppercase;font-family:Cinzel,serif;font-size:1.1rem;font-weight:700;text-decoration:none}.nav-links{align-items:center;gap:30px;list-style:none;display:flex}.nav-links a{color:var(--cream-dark);letter-spacing:2px;text-transform:uppercase;font-family:Cinzel,serif;font-size:.7rem;text-decoration:none;transition:color .3s;position:relative}.nav-links a:after{content:"";background:var(--gold-bright);width:0;height:1px;transition:width .3s;position:absolute;bottom:-4px;left:0}.nav-links a:hover{color:var(--gold-bright)}.nav-links a:hover:after{width:100%}.nav-book-btn{background:var(--gold-bright);color:var(--green-darkest);letter-spacing:2px;text-transform:uppercase;padding:10px 24px;font-family:Cinzel,serif;font-size:.7rem;font-weight:700;text-decoration:none;transition:all .3s}.nav-book-btn:hover{background:var(--gold-light);box-shadow:0 0 20px #d4a8434d}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:5px;display:none}.hamburger span{background:var(--gold-bright);width:25px;height:2px;display:block}.hero{background:radial-gradient(ellipse at 50% 30%, #3a4f3a99 0%, transparent 60%), radial-gradient(ellipse at 80% 80%, #2a3c2a66 0%, transparent 50%), var(--green-darkest);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#d4a84304 2px 4px);position:absolute;inset:0}.hero-content{text-align:center;z-index:2;padding:20px;animation:1.2s ease-out fadeUp}.hero-ornament{color:var(--gold-dark);letter-spacing:12px;opacity:.6;margin-bottom:20px;font-size:1.5rem}.hero-subtitle{letter-spacing:8px;text-transform:uppercase;color:var(--gold-bright);margin-bottom:15px;font-family:Cinzel,serif;font-size:clamp(.7rem,1.5vw,.9rem);animation:1.2s ease-out .2s both fadeUp}.hero-title{color:var(--cream);margin-bottom:5px;font-family:Playfair Display,serif;font-size:clamp(3.5rem,10vw,8rem);font-weight:900;line-height:.95;animation:1.2s ease-out .4s both fadeUp}.hero-title em{color:var(--gold-bright);letter-spacing:6px;margin-top:5px;font-size:.45em;font-style:italic;display:block}.hero-tagline{color:var(--cream-dark);letter-spacing:2px;margin:15px 0 5px;font-family:Cormorant Garamond,serif;font-size:1.2rem;font-style:italic;animation:1.2s ease-out .5s both fadeUp}.hero-est{letter-spacing:6px;color:var(--gold-dark);margin:15px 0 10px;font-family:Cinzel,serif;font-size:.8rem;animation:1.2s ease-out .6s both fadeUp}.hero-badges{justify-content:center;gap:20px;margin-bottom:35px;animation:1.2s ease-out .7s both fadeUp;display:flex}.hero-badge{letter-spacing:3px;text-transform:uppercase;color:var(--gold-bright);border:1px solid #d4a8434d;padding:6px 16px;font-family:Cinzel,serif;font-size:.6rem}.hero-cta{color:var(--gold-bright);border:1px solid var(--gold-bright);letter-spacing:4px;text-transform:uppercase;background:0 0;padding:16px 50px;font-family:Cinzel,serif;font-size:.75rem;text-decoration:none;transition:all .4s;animation:1.2s ease-out .8s both fadeUp;display:inline-block}.hero-cta:hover{background:var(--gold-bright);color:var(--green-darkest);box-shadow:0 0 40px #d4a84340}.hero-scroll{animation:2s infinite bounce;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.hero-scroll span{background:linear-gradient(to bottom, var(--gold-bright), transparent);width:1px;height:50px;display:block}section{padding:100px 30px;position:relative}.section-header{text-align:center;margin-bottom:60px}.section-label{letter-spacing:6px;text-transform:uppercase;color:var(--gold-bright);margin-bottom:10px;font-family:Cinzel,serif;font-size:.7rem}.section-title{color:var(--cream);font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:900;line-height:1.1}.section-divider{background:var(--gold-bright);width:60px;height:1px;margin:20px auto 0}.container{max-width:1100px;margin:0 auto}.services{background:var(--green-dark)}.services-grid{grid-template-columns:1fr 1fr;gap:0;max-width:800px;margin:0 auto;display:grid;position:relative}.services-grid:before{content:"";background:#d4a84326;width:1px;position:absolute;top:0;bottom:0;left:50%}.service-col{padding:0 40px}.service-col h3{letter-spacing:4px;text-transform:uppercase;color:var(--gold-bright);border-bottom:1px solid #d4a84333;margin-bottom:25px;padding-bottom:10px;font-family:Cinzel,serif;font-size:.75rem}.service-item{border-bottom:1px dotted #d4a84326;justify-content:space-between;align-items:baseline;padding:14px 0;transition:all .3s;display:flex}.service-item:hover{padding-left:8px}.service-name{color:var(--cream);font-family:Cormorant Garamond,serif;font-size:1.15rem;font-weight:600}.service-price{color:var(--gold-bright);white-space:nowrap;margin-left:15px;font-family:Cinzel,serif;font-size:.9rem;font-weight:700}.services-footer{text-align:center;flex-direction:column;align-items:center;gap:15px;margin-top:50px;display:flex}.services-badges{flex-wrap:wrap;justify-content:center;gap:15px;display:flex}.services-badge{letter-spacing:3px;text-transform:uppercase;color:var(--gold-bright);background:#d4a8430d;border:1px solid #d4a8434d;padding:8px 20px;font-family:Cinzel,serif;font-size:.65rem}.services-atm{color:var(--cream-dark);opacity:.6;font-size:.95rem;font-style:italic}.about{background:var(--green-darkest)}.about-content{grid-template-columns:1fr 1.2fr;align-items:center;gap:60px;display:grid}.about-image-wrap{position:relative}.about-image{z-index:1;object-fit:cover;object-position:center top;border:1px solid #d4a8434d;width:100%;height:500px;position:relative}.about-image-placeholder{z-index:1;background:var(--green-mid);width:100%;height:500px;color:var(--gold-dark);opacity:.5;letter-spacing:3px;text-transform:uppercase;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-family:Cinzel,serif;font-size:.7rem;display:flex;position:relative}.about-text h3{color:var(--cream);margin-bottom:8px;font-family:Playfair Display,serif;font-size:2rem;font-weight:700}.about-text .barber-title{letter-spacing:4px;text-transform:uppercase;color:var(--gold-bright);margin-bottom:25px;font-family:Cinzel,serif;font-size:.7rem}.about-text p{color:var(--cream-dark);margin-bottom:15px;font-size:1.15rem;line-height:1.8}.about-signature{color:var(--gold-bright);margin-top:25px;font-family:Playfair Display,serif;font-size:1.5rem;font-style:italic}.about-extras{flex-wrap:wrap;gap:20px;margin-top:20px;display:flex}.about-extra-item{letter-spacing:2px;text-transform:uppercase;color:var(--gold-dark);border-bottom:1px dotted #d4a84333;padding:5px 0;font-family:Cinzel,serif;font-size:.6rem}.gallery{background:var(--green-dark)}.gallery-carousel{position:relative}.gallery-strip{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:4px;padding:0 4px;display:flex;overflow-x:auto}.gallery-strip::-webkit-scrollbar{display:none}.gallery-photo{object-fit:cover;background:var(--green-mid);flex:0 0 280px;width:280px;height:280px;display:block}.gallery-arrow{z-index:10;color:var(--gold-bright);cursor:pointer;opacity:.7;background:#0006;border:1px solid #d4a8434d;border-radius:4px;justify-content:center;align-items:center;width:48px;height:48px;font-size:2rem;line-height:1;transition:opacity .3s,background .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery-arrow:hover{opacity:1;background:#0009}.gallery-arrow-left{left:12px}.gallery-arrow-right{right:12px}.reviews{background:var(--green-darkest)}.reviews-subtitle{text-align:center;color:var(--cream-dark);margin-top:-40px;margin-bottom:50px;font-size:1.1rem}.reviews-subtitle span{color:var(--gold-bright);font-weight:600}.reviews-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.review-card{color:inherit;cursor:pointer;background:#2a3c2a33;border:1px solid #d4a8431f;padding:35px;text-decoration:none;transition:all .4s;display:block;position:relative}.review-card:hover{border-color:#d4a8434d;transform:translateY(-4px)scale(1.02);box-shadow:0 10px 40px #0003,0 0 20px #d4a8431a}.review-stars{color:var(--gold-bright);letter-spacing:3px;margin-bottom:18px;font-size:.9rem}.review-text{color:var(--cream-dark);margin-bottom:20px;font-size:1.05rem;font-style:italic;line-height:1.7}.review-author{letter-spacing:3px;text-transform:uppercase;color:var(--gold-bright);font-family:Cinzel,serif;font-size:.7rem}.review-source{color:var(--cream-dark);opacity:.4;margin-top:5px;font-size:.75rem}.booking-cta{background:var(--green-darkest);text-align:center;padding:80px 30px;position:relative}.booking-cta:before,.booking-cta:after{content:"";background:linear-gradient(to right, transparent, var(--gold-bright), transparent);width:200px;height:1px;position:absolute;left:50%;transform:translate(-50%)}.booking-cta:before{top:0}.booking-cta:after{bottom:0}.booking-cta h2{color:var(--cream);margin-bottom:15px;font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:900}.booking-cta p{color:var(--cream-dark);margin-bottom:12px;max-width:500px;margin-inline:auto;font-size:1.15rem}.booking-cta .cta-note{letter-spacing:3px;text-transform:uppercase;color:var(--gold-dark);margin-bottom:30px;font-family:Cinzel,serif;font-size:.65rem}.booking-cta .cta-btn{background:var(--gold-bright);color:var(--green-darkest);letter-spacing:4px;text-transform:uppercase;padding:18px 60px;font-family:Cinzel,serif;font-size:.8rem;font-weight:700;text-decoration:none;transition:all .4s;display:inline-block}.booking-cta .cta-btn:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 0 50px #d4a8434d}.location{background:var(--green-dark)}.location-content{grid-template-columns:1fr 1fr;gap:50px;display:grid}.location-info h3{letter-spacing:4px;text-transform:uppercase;color:var(--gold-bright);margin-top:30px;margin-bottom:18px;font-family:Cinzel,serif;font-size:.75rem}.location-info h3:first-child{margin-top:0}.location-info p,.location-info address{color:var(--cream-dark);font-size:1.1rem;font-style:normal;line-height:1.8}.location-info a{color:var(--gold-bright);text-decoration:none;transition:color .3s}.location-info a:hover{color:var(--gold-light)}.hours-table{width:100%}.hours-row{border-bottom:1px dotted #d4a8431a;justify-content:space-between;padding:8px 0;font-size:1.05rem;display:flex}.hours-day{color:var(--cream-dark)}.hours-time{color:var(--gold-bright);font-weight:600}.location-map{border:1px solid #d4a84326;min-height:400px;overflow:hidden}.location-map iframe{filter:grayscale(60%)contrast(1.1)brightness(.8);border:none;width:100%;height:100%;min-height:400px;transition:filter .4s}.location-map:hover iframe{filter:grayscale(30%)contrast(1.05)brightness(.9)}.team{background:var(--green-dark)}.team-grid{grid-template-columns:repeat(5,1fr);gap:30px;display:grid}.team-card{text-align:center;transition:transform .4s,box-shadow .4s}.team-card:hover{transform:translateY(-4px)}.team-photo{aspect-ratio:1;object-fit:cover;object-position:center top;border:1px solid #d4a84333;width:100%;transition:border-color .4s}.team-card:hover .team-photo{border-color:#d4a84380}.team-placeholder{aspect-ratio:1;background:var(--green-mid);border:1px solid #d4a84333;justify-content:center;align-items:center;width:100%;display:flex}.team-placeholder span{letter-spacing:3px;color:var(--gold-dark);opacity:.5;font-family:Cinzel,serif;font-size:1.8rem}.team-name{letter-spacing:3px;text-transform:uppercase;color:var(--cream);margin-top:15px;font-family:Cinzel,serif;font-size:.75rem}.team-subtitle{letter-spacing:2px;text-transform:uppercase;color:var(--gold-bright);opacity:.8;margin-top:4px;font-family:Cinzel,serif;font-size:.6rem}footer{background:var(--green-darkest);text-align:center;border-top:1px solid #d4a8431a;padding:40px 30px}.footer-logo{letter-spacing:5px;text-transform:uppercase;color:var(--gold-bright);margin-bottom:8px;font-family:Cinzel,serif;font-size:.8rem}.footer-sub{color:var(--cream-dark);opacity:.5;font-size:.85rem}.footer-links{justify-content:center;gap:25px;margin-top:15px;display:flex}.footer-links a{color:var(--cream-dark);letter-spacing:2px;text-transform:uppercase;opacity:.5;font-family:Cinzel,serif;font-size:.6rem;text-decoration:none;transition:all .3s}.footer-links a:hover{opacity:1;color:var(--gold-bright)}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(10px)}}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(40px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (max-width:900px){.nav-links{display:none}.hamburger{display:flex}.nav-links.open{background:#1a2a1afa;border-bottom:1px solid #d4a84333;flex-direction:column;gap:15px;padding:20px 30px;display:flex;position:absolute;top:100%;left:0;right:0}.services-grid{grid-template-columns:1fr}.services-grid:before{display:none}.about-content{grid-template-columns:1fr}.about-image,.about-image-placeholder{height:350px}.reviews-grid,.location-content{grid-template-columns:1fr}.gallery-photo{flex:0 0 220px;width:220px;height:220px}.team-grid{grid-template-columns:repeat(3,1fr)}.hero-badges{flex-direction:column;align-items:center}}@media (max-width:600px){.team-grid{grid-template-columns:repeat(2,1fr)}}
