:root{--black:#0A0A0A;--gold:#D4AF37;--dark:#151515;--gray:#A9A9A9;--white:#fff;--red:#B51F2E;--red2:#D32A3A;--line:rgba(212,175,55,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.wrap{width:min(1120px,calc(100% - 36px));margin:auto}.narrow{max-width:760px}.center{text-align:center}.section{padding:78px 0;border-top:1px solid rgba(255,255,255,.055)}
.topbar{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:12px max(18px,calc((100vw - 1120px)/2));background:rgba(10,10,10,.84);backdrop-filter:blur(12px);border-bottom:1px solid rgba(212,175,55,.16)}
.brand{font-family:Georgia,serif;font-weight:700;letter-spacing:.12em;font-size:14px}.brand span,.eyebrow,h2 span{color:var(--gold)}
.hero{min-height:790px;display:flex;align-items:flex-end;position:relative;background:url("../images/hero.jpg") center 25%/cover no-repeat}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.5) 42%,#0A0A0A 94%)}.hero-content{position:relative;padding-bottom:88px}
.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:800;margin:0 0 15px}.hero h1,h2{font-family:Georgia,"Times New Roman",serif;line-height:.98;letter-spacing:-.035em;margin:0 0 22px}.hero h1{font-size:clamp(48px,9vw,96px);max-width:900px}.hero h1 em{color:var(--gold);font-style:normal}h2{font-size:clamp(38px,6vw,66px)}.lead,.intro{color:#d1d1d1;font-size:17px;max-width:720px}.lead{max-width:680px}.trust{font-size:13px;color:#ddd;margin:20px 0 26px}.actions,.summary-actions{display:flex;gap:12px;flex-wrap:wrap}
.book,.btn-secondary,.btn-gold{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:9px;font-size:12px;font-weight:900;letter-spacing:.09em;text-align:center;transition:.18s ease;cursor:pointer;border:1px solid transparent}
.book{background:linear-gradient(135deg,var(--red),var(--red2));color:#fff;box-shadow:0 8px 24px rgba(181,31,46,.28),0 0 0 1px rgba(255,255,255,.08) inset}.book:hover,.book:focus-visible{transform:translateY(-2px);box-shadow:0 10px 34px rgba(211,42,58,.45),0 0 0 2px rgba(255,255,255,.13) inset;filter:brightness(1.08)}.book:active{transform:scale(.98)}.book-small{min-height:38px;padding:0 15px;font-size:10px}
.btn-secondary{border-color:rgba(212,175,55,.48);color:var(--gold);background:rgba(0,0,0,.35)}.btn-secondary:hover,.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.08)}.btn-gold{background:var(--gold);color:#0A0A0A}
.services{display:grid;gap:12px;margin-top:34px}.service{border:1px solid var(--line);border-radius:13px;padding:18px;background:linear-gradient(145deg,#151515,#0e0e0e)}.service-top{display:flex;justify-content:space-between;gap:20px}.service h3{font-family:Georgia,serif;margin:0 0 5px;font-size:20px}.price{color:var(--gold);font-weight:900}.service p{color:#aaa;font-size:14px;margin:6px 0}.service button{margin-top:10px;background:transparent;border:1px solid #555;color:#fff;border-radius:7px;padding:9px 12px;font-weight:800}.service.selected{border-color:var(--gold);box-shadow:0 0 0 1px rgba(212,175,55,.2) inset}.service.selected button{background:var(--gold);color:#111;border-color:var(--gold)}
.summary{margin-top:20px;border:1px solid rgba(212,175,55,.38);padding:22px;border-radius:14px;background:#101010}.summary>div:not(.summary-actions){display:flex;justify-content:space-between;padding:7px 0;color:#bbb}.summary strong{color:#fff}.summary .total{border-top:1px solid #333;margin-top:8px;padding-top:15px;font-size:20px}.summary-actions{margin-top:18px}
.welcome{background:radial-gradient(circle at 50% 0,rgba(212,175,55,.07),transparent 45%)}.lead-form{display:grid;gap:13px;margin-top:30px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:13px}.lead-form label{font-size:12px;color:#bbb}.lead-form input{width:100%;margin-top:6px;background:#111;border:1px solid #3a3a3a;color:white;border-radius:8px;padding:14px;font-size:16px;outline:none}.lead-form input:focus{border-color:var(--gold)}.fine,.review-note{font-size:12px;color:#777}
.photo-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:12px;margin-top:32px}.photo-grid img{width:100%;height:420px;object-fit:cover;border-radius:12px}.photo-grid img:nth-child(2),.photo-grid img:nth-child(3){height:300px;align-self:end}
.reviews{background:#0d0d0d}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.review-card{margin:0;border:1px solid rgba(212,175,55,.25);border-radius:13px;padding:24px;background:#111}.stars{color:var(--gold);letter-spacing:.15em}.review-card blockquote{font-family:Georgia,serif;font-size:19px;line-height:1.5;margin:18px 0;color:#eee}.review-card p{margin:0}.review-card small{display:block;color:#777;margin-top:2px}
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}.split>img{border-radius:14px;max-height:650px;width:100%;object-fit:cover}.benefits{padding:0;list-style:none;margin:25px 0}.benefits li{padding:8px 0;border-bottom:1px solid #222;color:#d0d0d0}.benefits li:before{content:"✓";color:var(--gold);margin-right:10px;font-weight:900}
.help,.location{background:linear-gradient(180deg,#0A0A0A,#101010)}.location p{color:#bbb}.social-links{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.social-links a{border:1px solid #444;border-radius:99px;padding:10px 18px;color:#ddd}
footer{padding:42px 0;border-top:1px solid var(--line);background:#070707}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer-grid strong{font-family:Georgia,serif;letter-spacing:.1em}.footer-grid p{color:#777}.footer-grid nav{display:flex;gap:18px;flex-wrap:wrap;color:#aaa;font-size:13px}
.mobile-bar{position:fixed;z-index:60;left:12px;right:12px;bottom:12px}.mobile-bar button{width:100%;border:0;border-radius:11px;padding:15px;background:linear-gradient(135deg,var(--red),var(--red2));color:white;font-weight:900;box-shadow:0 10px 30px rgba(0,0,0,.55)}
@media(max-width:760px){.section{padding:60px 0}.hero{min-height:720px;background-position:55% center}.hero-content{padding-bottom:65px}.hero h1{font-size:52px}.lead{font-size:16px}.actions>*{width:100%}.grid2,.review-grid,.split{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr 1fr}.photo-grid img{height:330px}.photo-grid img:first-child{grid-column:1/-1;height:390px}.photo-grid img:nth-child(2),.photo-grid img:nth-child(3){height:230px}.summary-actions>*{width:100%}.footer-grid{display:block}.footer-grid nav{margin-top:18px}.book-small{width:auto}.review-note{margin-top:18px}.mobile-bar:not([hidden]){display:block}}
@media(max-width:420px){.topbar .brand{font-size:11px}.book-small{font-size:9px;padding:0 10px}.hero h1{font-size:44px}.photo-grid{grid-template-columns:1fr}.photo-grid img:first-child{grid-column:auto}.photo-grid img,.photo-grid img:first-child,.photo-grid img:nth-child(2),.photo-grid img:nth-child(3){height:310px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.ico{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.book,.btn-secondary,.btn-gold,.social-links a,.diagnostic-link{gap:9px}.social-links a{display:inline-flex;align-items:center;justify-content:center}.social-links .social-ico{width:20px;height:20px}.diagnostic-card{margin-top:12px;border-style:dashed}.diagnostic-link{display:inline-flex;align-items:center;justify-content:center;margin-top:12px;min-height:44px;padding:0 15px;border:1px solid rgba(212,175,55,.48);border-radius:8px;color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.07em}.service-category{display:block;color:var(--gold);font-size:10px;letter-spacing:.15em;text-transform:uppercase;margin-bottom:5px}

/* V2.2 — detalles, logo y resumen */
.brand-logo{display:flex;align-items:center;width:150px;height:52px;overflow:hidden}
.brand-logo img{width:100%;height:100%;object-fit:contain;filter:contrast(1.03)}
.brand-signature{padding:42px 18px 12px;display:flex;justify-content:center;background:#0A0A0A}
.brand-signature img{width:min(310px,68vw);max-height:190px;object-fit:contain;opacity:.96}
.service .details-toggle{background:transparent;border:0;color:var(--gold);padding:8px 0 2px;margin:3px 0 0;font-size:10px;letter-spacing:.13em;text-decoration:underline;text-underline-offset:4px}
.service .add-service{display:block;margin-top:13px}
.service-details{margin-top:10px;border-top:1px solid rgba(255,255,255,.08);padding-top:10px}
.service-details ul{list-style:none;padding:0;margin:0}
.service-details li{color:#c8c8c8;font-size:13px;padding:4px 0}
.service-details li::before{content:'✓';color:var(--gold);font-weight:900;margin-right:8px}
.first-visit-note{display:block!important;background:rgba(212,175,55,.07);border:1px solid rgba(212,175,55,.28);border-radius:10px;padding:14px 15px!important;margin-bottom:12px}
.first-visit-note strong{display:block;color:var(--gold)!important;font-size:11px;letter-spacing:.12em;margin-bottom:5px}
.first-visit-note span{display:block;color:#cfcfcf;font-size:12px;line-height:1.5}
#discountRow strong{color:var(--gold)}
.summary .total strong{color:#fff}
@media(max-width:760px){.brand-logo{width:112px;height:44px}.topbar{padding-top:8px;padding-bottom:8px}.brand-signature{padding-top:30px}.brand-signature img{width:min(270px,76vw)}}

.brand-name{font-family:Georgia,"Times New Roman",serif;font-size:16px;letter-spacing:.18em;font-weight:700;color:#fff}
.brand-signature{padding:56px 18px 24px;min-height:330px;align-items:center}
.brand-signature img{width:min(520px,82vw);max-height:300px;object-fit:contain;opacity:1}
.hero .actions{max-width:390px}
.hero .actions .book{width:100%}
@media(max-width:760px){
  .brand-name{font-size:14px}
  .brand-signature{min-height:260px;padding:40px 18px 20px}
  .brand-signature img{width:min(420px,90vw);max-height:240px}
}

.brand-name{
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  letter-spacing:.045em;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}
.brand-franklin{color:#fff}
.brand-barber{color:var(--gold)}
@media(max-width:760px){
  .brand-name{font-size:15px;letter-spacing:.035em}
}
