/*
Theme Name: Salon 55 Beverley Elegance
Theme URI: https://salon55.co.uk/
Author: Custom Salon Theme
Description: Elegant SEO-ready responsive salon theme with desktop and mobile Customizer settings.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: salon55-elegance
*/
:root{--cream:#faf7f3;--rose:#ae807a;--dark:#262321;--gold:#b79b78;--space:82px;--hero-height:640px;--hero-title:68px;--logo-width:210px;--hero-position:center center}*{box-sizing:border-box}body{margin:0;font:17px/1.7 'Segoe UI',Arial,sans-serif;color:var(--dark);background:var(--cream)}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.15}h1{font-size:var(--hero-title);margin:15px 0 25px}h2{font-size:clamp(32px,4vw,50px);margin:10px 0 22px}h3{font-size:26px}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.topbar{background:var(--dark);color:#fff;text-align:center;font-size:13px;letter-spacing:.08em;padding:7px}.header{background:#fff;position:relative;z-index:20;box-shadow:0 2px 12px #0001}.navrow{min-height:95px;display:flex;align-items:center;gap:26px}.brand{font:32px Georgia,serif;letter-spacing:.08em;white-space:nowrap}.brand img{max-width:var(--logo-width);max-height:75px;object-fit:contain}.brand small{display:block;font:11px Arial,sans-serif;letter-spacing:.23em;text-align:center;color:var(--rose)}.nav{margin-left:auto}.nav>ul{display:flex;align-items:center;gap:21px;list-style:none;padding:0;margin:0}.nav li{position:relative;list-style:none}.nav a{font-size:13px;letter-spacing:.035em;text-transform:uppercase}.nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;box-shadow:0 10px 25px #0002;padding:12px 0;margin:0;z-index:50}.nav .sub-menu a{display:block;padding:8px 18px}.nav li:hover>.sub-menu,.nav li:focus-within>.sub-menu{display:block}.nav .sub-menu .sub-menu{left:100%;top:0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 23px;background:var(--rose);color:#fff!important;text-transform:uppercase;font:700 12px Arial,sans-serif;letter-spacing:.13em;border:1px solid var(--rose);transition:.2s}.btn:hover{background:var(--dark);border-color:var(--dark)}.btn.light{background:transparent;border-color:#fff}.btn.light:hover{background:#fff;color:var(--dark)!important}.mobile-toggle,.mobile-nav{display:none}.hero{min-height:var(--hero-height);display:flex;align-items:center;background:linear-gradient(90deg,#1b1918d9,#1b19183d),var(--hero-image,linear-gradient(130deg,#a07e78,#382c2b));background-size:cover;background-position:var(--hero-position);color:white}.hero-inner{padding:85px 0;max-width:740px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font:700 12px Arial,sans-serif;color:var(--gold)}.hero p{font-size:20px;max-width:590px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:var(--space) 0}.intro{text-align:center;max-width:790px;margin:0 auto 44px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.tile{background:#fff;padding:35px;border:1px solid #e8dfd8}.tile h3{margin:5px 0 14px}.tile a.more{color:#91645e;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split .photo{background:#e9dcd3;min-height:340px;display:flex;align-items:center;justify-content:center;overflow:hidden}.split .photo img{width:100%;height:100%;object-fit:cover}.muted{background:#f0e8e2}.dark{background:#282321;color:white}.areas{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.areas span{padding:9px 15px;border:1px solid #d8c8c0;background:#fff;font-size:14px}.foot{background:#211e1d;color:#f9f3ed;padding:55px 0 25px}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.foot a{color:#f9f3ed}.small{font-size:13px;color:#c6b8ad}.content{max-width:850px;margin:0 auto}.content a{text-decoration:underline;color:#92645c}.pagehero{background:#e9ded7;padding:65px 0;text-align:center}.pagehero h1{font-size:50px}.entry{padding:55px 0}.bookingbar{text-align:center;padding:45px 20px;background:#e7d7d1}.screen-reader-text{position:absolute;left:-9999px}.skip-link:focus{left:10px;top:10px;z-index:999;background:white;padding:10px}.wp-block-image img{height:auto}@media(max-width:1050px){.nav{display:none}.mobile-toggle{display:block;margin-left:auto;background:transparent;border:0;font-size:30px;cursor:pointer}.mobile-nav.open{display:block;background:white;padding:12px 25px 25px}.mobile-nav ul{list-style:none;margin:0;padding:0}.mobile-nav li{list-style:none;border-top:1px solid #eee}.mobile-nav a{display:block;padding:10px}.mobile-nav .sub-menu{padding-left:22px}.header .btn{font-size:11px;padding:11px}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){:root{--space:55px;--hero-height:570px;--hero-title:43px;--logo-width:135px;--hero-position:center center}.wrap{width:calc(100% - 30px)}.navrow{min-height:75px;gap:10px}.brand{font-size:24px}.brand small{font-size:8px}.hero{background-position:var(--hero-position);min-height:var(--hero-height)}.hero-inner{padding:65px 0}.hero p{font-size:17px}.grid,.split,.footgrid{grid-template-columns:1fr}.split{gap:30px}.actions{flex-direction:column;align-items:stretch}.pagehero h1{font-size:36px}.header .btn{font-size:9px;padding:10px 8px}.tile{padding:26px}}
/* V1.1 menu reliability and responsive navigation */
.navrow{min-width:0}
.nav{min-width:0}
.nav>ul{flex-wrap:wrap;justify-content:flex-end;row-gap:8px}
.nav .children{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;box-shadow:0 10px 25px #0002;padding:12px 0;margin:0;z-index:50}
.nav li:hover>.children,.nav li:focus-within>.children{display:block}
.nav .children a{display:block;padding:8px 18px}
.nav .children .children{top:0;left:100%}
@media(max-width:1050px){
  .mobile-toggle{display:block;flex-shrink:0;position:relative;z-index:3;color:#262321}
  .mobile-nav{display:none;width:100%;background:#fff}
  .mobile-nav.open{display:block!important}
  .mobile-nav .children,.mobile-nav .sub-menu{display:block;position:static;box-shadow:none;border:0;background:#faf7f3;padding-left:18px}
  .mobile-nav a{color:#262321}
  .mobile-nav a:focus-visible,.mobile-toggle:focus-visible{outline:2px solid #ae807a;outline-offset:3px}
}
@media(max-width:420px){
  .navrow{gap:8px}
  .brand{font-size:20px;min-width:0}
  .brand small{font-size:7px;letter-spacing:.1em}
  .header .bookbtn{font-size:9px;padding:9px 7px}
}
