/* Glam & Fab — branch page blocks. Loads after gnf-post.css (nav/footer/type). */

.branch-hero{padding:8.5rem 5rem 3rem;background:var(--pink);}
.branch-hero-inner{max-width:900px;margin:0 auto;text-align:center;}
.branch-eyebrow{font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:var(--rose);font-weight:500;margin-bottom:.9rem;}
.branch-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4.4vw,3.2rem);font-weight:300;line-height:1.14;margin-bottom:1rem;}
.branch-h1 em{font-style:italic;color:var(--rose);}
.branch-lede{font-size:.94rem;font-weight:300;line-height:1.9;color:var(--muted);max-width:680px;margin:0 auto 1.6rem;}
.branch-rating{display:inline-flex;align-items:center;gap:.5rem;background:var(--white);border:1px solid var(--blush);border-radius:30px;padding:.45rem 1.1rem;font-size:.8rem;color:var(--deep);font-weight:400;}
.branch-rating .star{color:var(--gold);}

/* NAP + MAP */
.branch-main{max-width:1100px;margin:0 auto;padding:3.5rem 2rem 0;display:grid;grid-template-columns:1fr 1.1fr;gap:3rem;align-items:start;}
.nap-card{background:var(--white);border:1px solid var(--blush);border-radius:6px;padding:2rem 1.8rem;}
.nap-card h2{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:400;margin-bottom:1.4rem;}
.nap-row{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.4rem;}
.nap-icon{width:34px;height:34px;flex-shrink:0;background:var(--blush);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;}
.nap-row h3{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 .3rem;font-weight:500;font-family:'Jost',sans-serif;}
.nap-row p,.nap-row a{font-size:.88rem;color:var(--deep);font-weight:300;line-height:1.65;text-decoration:none;}
.nap-row a:hover{color:var(--rose);}
.nap-closed{color:var(--rose);}
.branch-map{width:100%;height:100%;min-height:420px;border:0;border-radius:6px;display:block;}
.map-wrap{border:1px solid var(--blush);border-radius:6px;overflow:hidden;background:var(--white);}

/* GENERIC SECTIONS */
.branch-sec{max-width:1100px;margin:0 auto;padding:3.5rem 2rem 0;}
.branch-sec h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:300;margin-bottom:.6rem;}
.branch-sec h2 em{font-style:italic;color:var(--rose);}
.branch-sec .sub{font-size:.88rem;color:var(--muted);font-weight:300;line-height:1.9;margin-bottom:1.8rem;max-width:720px;}

.tx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem;}
.tx{background:var(--white);border:1px solid var(--blush);border-radius:5px;padding:1.1rem 1.2rem;}
.tx-name{font-family:'Cormorant Garamond',serif;font-size:1.12rem;font-weight:400;color:var(--deep);margin-bottom:.3rem;}
.tx-desc{font-size:.79rem;color:var(--muted);font-weight:300;line-height:1.7;}

.area-list{display:flex;flex-wrap:wrap;gap:.55rem;}
.area{background:var(--white);border:1px solid var(--blush);border-radius:20px;padding:.42rem 1rem;font-size:.78rem;color:var(--deep);font-weight:300;}

/* FAQ */
.bfaq{max-width:820px;}
.bfaq details{border-bottom:1px solid var(--blush);}
.bfaq details[open]{background:var(--white);}
.bfaq summary{list-style:none;cursor:pointer;padding:1.2rem 2.8rem 1.2rem 1rem;position:relative;font-family:'Cormorant Garamond',serif;font-size:1.12rem;color:var(--deep);line-height:1.45;transition:color .3s;}
.bfaq summary::-webkit-details-marker{display:none;}
.bfaq summary:hover,.bfaq details[open] summary{color:var(--rose);}
.bfaq summary::after{content:'+';position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-family:'Jost',sans-serif;font-size:1.25rem;font-weight:300;color:var(--rose);}
.bfaq details[open] summary::after{content:'−';}
.bfaq .a{padding:0 2.8rem 1.3rem 1rem;}
.bfaq .a p{font-size:.87rem;font-weight:300;line-height:1.95;color:var(--muted);margin:0;}

/* OTHER BRANCHES */
.ob-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.9rem;}
.ob{background:var(--white);border:1px solid var(--blush);border-radius:5px;padding:1rem 1.1rem;text-decoration:none;display:block;transition:border-color .3s,transform .3s;}
.ob:hover{border-color:var(--rose);transform:translateY(-3px);}
.ob-name{font-family:'Cormorant Garamond',serif;font-size:1.06rem;color:var(--deep);margin-bottom:.2rem;}
.ob-city{font-size:.72rem;color:var(--muted);font-weight:300;letter-spacing:.04em;}

.branch-cta{max-width:1100px;margin:3.5rem auto 4.5rem;padding:0 2rem;}
.branch-cta-inner{background:linear-gradient(135deg,#2a1a18,#3d2820);border-radius:6px;padding:2.8rem 2rem;text-align:center;}
.branch-cta-inner h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:300;color:var(--white);margin-bottom:.7rem;}
.branch-cta-inner h2 em{font-style:italic;color:var(--gold);}
.branch-cta-inner p{font-size:.86rem;color:rgba(255,255,255,.62);font-weight:300;line-height:1.8;margin-bottom:1.6rem;}
.cta-btns{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;}
.btn-ghost{display:inline-block;border:1px solid rgba(255,255,255,.35);color:var(--white);padding:.85rem 2.1rem;text-decoration:none;font-size:.73rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;border-radius:2px;transition:all .3s;}
.btn-ghost:hover{background:var(--white);color:var(--deep);}

@media(max-width:1024px){
  .branch-hero{padding:7.5rem 2.5rem 2.5rem;}
  .branch-main{grid-template-columns:1fr;gap:2rem;}
  .branch-map{min-height:320px;}
}
@media(max-width:600px){
  .branch-hero{padding:7rem 1.4rem 2rem;}
  .branch-main,.branch-sec,.branch-cta{padding-left:1.4rem;padding-right:1.4rem;}
  .nap-card{padding:1.5rem 1.2rem;}
  .bfaq summary{font-size:1.02rem;padding:1.05rem 2.4rem 1.05rem .4rem;}
  .bfaq summary::after{right:.4rem;}
  .bfaq .a{padding:0 2.4rem 1.1rem .4rem;}
}

/* Photo hero (treatment and branch pages) */
.branch-hero.has-photo .branch-hero-inner{max-width:1100px;display:grid;grid-template-columns:1.2fr .8fr;gap:3.5rem;align-items:center;text-align:left;}
.branch-hero.has-photo .branch-lede{margin-left:0;}
.hero-photo{margin:0;}
.hero-photo img{display:block;width:100%;max-height:470px;aspect-ratio:4/5;object-fit:cover;border-radius:10px;box-shadow:0 22px 50px rgba(42,26,24,.14);}
@media(max-width:860px){.branch-hero.has-photo .branch-hero-inner{grid-template-columns:1fr;gap:1.8rem;text-align:center;}
  .branch-hero.has-photo .branch-lede{margin:0 auto 1rem;}.hero-photo img{max-height:340px;aspect-ratio:4/3;}}

