:root{--ink:#161513;--paper:#f1eee8;--cream:#ded5c7;--gold:#aa8258;--white:#fff;--line:rgba(22,21,19,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:rgba(241,238,232,.9);backdrop-filter:blur(12px);position:fixed;inset:0 0 auto;z-index:50;border-bottom:1px solid rgba(22,21,19,.08)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{border:1px solid currentColor;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-family:'Playfair Display';font-size:25px;font-style:italic}.brand span:last-child{display:grid;line-height:.95;letter-spacing:.13em;font-size:12px}.brand em{font-family:'Playfair Display';font-size:17px;letter-spacing:.06em}.nav{display:flex;align-items:center;gap:30px;font-size:13px}.nav>a:not(.btn):hover,.line-link:hover{opacity:.55}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;background:var(--ink);color:#fff;padding:17px 22px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:.25s}.btn:hover{transform:translateY(-2px);background:#2b2925}.btn-small{padding:13px 18px}.menu-btn{display:none;background:none;border:0}.hero{height:100svh;min-height:680px;position:relative;display:flex;align-items:center;padding:90px 7vw 0;color:white;background:url('https://images.unsplash.com/photo-1560066984-138dadb4c035?auto=format&fit=crop&w=2200&q=88') center 45%/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,11,10,.79) 0%,rgba(12,11,10,.42) 45%,rgba(12,11,10,.08) 75%),linear-gradient(0deg,rgba(8,8,7,.4),transparent 45%)}.hero-content{position:relative;z-index:1;max-width:720px}.eyebrow{font-size:11px;letter-spacing:.24em;font-weight:700;margin:0 0 24px}.gold{color:var(--gold)}h1,h2,blockquote{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-.045em}h1{font-size:clamp(68px,8vw,128px);line-height:.82;margin:0}h1 i,h2 i,blockquote i{font-weight:500}.hero-copy{font-size:17px;line-height:1.7;max-width:500px;margin:38px 0}.hero-actions{display:flex;align-items:center;gap:30px}.text-link{font-size:12px;letter-spacing:.08em;text-transform:uppercase}.rating-card{position:absolute;right:5vw;bottom:6vh;z-index:2;background:rgba(241,238,232,.92);color:var(--ink);padding:22px 26px;min-width:245px;backdrop-filter:blur(8px)}.rating-card strong{font-family:'Playfair Display';font-size:30px}.rating-card strong span{font:12px Manrope;color:var(--gold);letter-spacing:.1em}.rating-card p{margin:3px 0 15px;font-size:13px}.rating-card small{letter-spacing:.2em;font-size:9px}.section{padding:120px 7vw}.section-tag{font-size:10px;letter-spacing:.2em;font-weight:700;writing-mode:vertical-rl;transform:rotate(180deg);opacity:.45}.intro{display:grid;grid-template-columns:50px 1fr 1fr;gap:5vw;align-items:center}.intro-copy{max-width:650px}.intro h2,.services h2,.contact h2{font-size:clamp(50px,6vw,94px);line-height:.94;margin:0 0 38px}.intro-copy>p:not(.eyebrow){max-width:560px;font-size:16px;line-height:1.8;color:#514e48}.line-link{display:inline-block;margin-top:20px;padding-bottom:7px;border-bottom:1px solid;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.intro-visual{min-height:650px;background:url('https://images.unsplash.com/photo-1521590832167-7bcbfaa6381f?auto=format&fit=crop&w=1200&q=88') center/cover no-repeat}.services{background:var(--ink);color:white}.services-head{display:grid;grid-template-columns:50px 1fr;gap:5vw}.section-tag.light{color:white}.service-list{margin:55px 0 70px 100px;border-top:1px solid rgba(255,255,255,.18)}.service-list a{display:grid;grid-template-columns:70px 1fr auto;align-items:center;padding:28px 5px;border-bottom:1px solid rgba(255,255,255,.18);transition:.25s}.service-list a:hover{padding-left:18px;background:rgba(255,255,255,.04)}.service-list span{font-size:10px;color:#aaa}.service-list strong{font:500 clamp(29px,4vw,56px) 'Playfair Display'}.service-list em{font-size:24px}.services-cta{margin-left:100px;display:flex;justify-content:space-between;align-items:center}.services-cta p{color:#aaa}.btn-light{background:var(--paper);color:var(--ink)}.quote-section{display:grid;grid-template-columns:50px 1fr;gap:5vw}.quote-section blockquote{font-size:clamp(48px,6vw,96px);line-height:1;margin:10px 0 80px}.big-rating{grid-column:2;display:flex;align-items:center;gap:35px;border-top:1px solid var(--line);padding-top:30px}.big-rating>span{font:600 100px/1 'Playfair Display'}.big-rating b{color:var(--gold);letter-spacing:.15em}.big-rating p{font-size:13px}.contact{background:var(--cream);display:grid;grid-template-columns:1.5fr 1fr;gap:8vw}.contact address{font-style:normal;font:28px/1.5 'Playfair Display';margin:35px 0}.contact-main>a{display:inline-block;margin:4px 0;border-bottom:1px solid}.hours{padding-top:30px}.hours>div{display:flex;justify-content:space-between;gap:25px;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}.hours .btn{margin-top:35px}.booking-strip{background:var(--gold);padding:60px 7vw;display:flex;justify-content:space-between;align-items:center}.booking-strip p{font-size:11px;letter-spacing:.2em;font-weight:700}.booking-strip a{font:600 clamp(45px,6vw,94px)/1 'Playfair Display';border-bottom:2px solid}.booking-strip a span{font-family:Manrope;font-size:.45em}footer{background:var(--ink);color:white;padding:60px 7vw;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:end}.footer-brand{width:max-content}footer>div{display:flex;gap:28px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}footer small{grid-column:1/-1;opacity:.4;font-size:9px;letter-spacing:.18em}.mobile-book{display:none}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}.reveal.show{opacity:1;transform:none}
@media(max-width:800px){.site-header{height:74px;padding:0 20px}.brand-mark{width:36px;height:36px;font-size:21px}.brand span:last-child{font-size:9px}.brand em{font-size:14px}.menu-btn{display:grid;width:36px;height:36px;place-content:center;gap:7px}.menu-btn span{display:block;width:24px;height:1px;background:var(--ink)}.nav{display:none;position:absolute;top:74px;left:0;right:0;padding:25px 20px 35px;background:var(--paper);flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav>a{padding:14px 0;border-bottom:1px solid var(--line)}.nav .btn{margin-top:15px;border:0}.hero{min-height:720px;padding:74px 22px 0;background-position:57% center}.hero-shade{background:linear-gradient(90deg,rgba(12,11,10,.76),rgba(12,11,10,.26)),linear-gradient(0deg,rgba(8,8,7,.55),transparent 60%)}h1{font-size:65px}.hero-copy{font-size:15px;margin:30px 0}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.rating-card{left:22px;right:auto;bottom:30px;min-width:215px;padding:17px 20px}.section{padding:85px 22px}.section-tag{display:none}.intro{display:block}.intro h2,.services h2,.contact h2{font-size:50px}.intro-visual{min-height:440px;margin-top:60px}.services-head{display:block}.service-list,.services-cta{margin-left:0}.service-list{margin-top:35px}.service-list a{grid-template-columns:40px 1fr auto;padding:22px 4px}.service-list strong{font-size:32px}.services-cta{align-items:flex-start;flex-direction:column;gap:18px}.quote-section{display:block}.quote-section blockquote{font-size:48px;margin-bottom:55px}.big-rating{display:block}.big-rating>span{font-size:90px}.contact{display:block}.hours{margin-top:60px}.booking-strip{padding:55px 22px;display:block}.booking-strip a{font-size:48px;display:inline-block;margin-top:18px}footer{padding:60px 22px 100px;display:block}footer>div{margin:40px 0}.mobile-book{position:fixed;display:flex;align-items:center;justify-content:space-between;left:14px;right:14px;bottom:14px;z-index:80;background:var(--gold);color:var(--ink);padding:16px 18px;font-size:11px;font-weight:800;letter-spacing:.13em;box-shadow:0 10px 35px rgba(0,0,0,.25)}}


/* Salong Alexanders egna färger och bilder */
:root{
  --sa-red:#ff1748;
  --sa-orange:#ff8517;
  --sa-coral:#ff4d3f;
}
.logo-brand{display:flex;align-items:center}
.logo-brand img{width:86px;height:86px;object-fit:cover;border-radius:2px;display:block}
.site-header .logo-brand img{width:70px;height:70px}
.footer-brand.logo-brand img{width:92px;height:92px}
.btn{background:linear-gradient(100deg,var(--sa-red),var(--sa-orange));border-color:transparent}
.gold,.coral{color:var(--sa-coral)!important}
.booking-strip{background:linear-gradient(100deg,var(--sa-red),var(--sa-orange))}
.mobile-book{background:linear-gradient(100deg,var(--sa-red),var(--sa-orange))}
.rating-card strong span,.big-rating b{color:var(--sa-orange)}

.work{background:#f6f3ee;color:#171717}
.work-head{max-width:760px;margin:2rem 0 3.5rem}
.work-head h2{font-size:clamp(3rem,7vw,7rem);line-height:.9;margin:.3rem 0 1.5rem}
.work-head p:last-child{max-width:560px;line-height:1.7}
.work-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:1.5rem}
.work-card,.before-after{margin:0;background:#111;overflow:hidden}
.work-card img{width:100%;height:720px;object-fit:cover;display:block}
.work-card figcaption{padding:1.5rem;color:#fff;display:flex;justify-content:space-between;gap:1rem;align-items:end}
.work-card figcaption span,.ba-title span{font-size:.72rem;letter-spacing:.18em}
.work-card figcaption b,.ba-title b{font-family:"Playfair Display",serif;font-size:1.5rem}
.before-after{color:#fff}
.ba-title{padding:1.5rem;display:flex;justify-content:space-between;align-items:end;gap:1rem}
.ba-images{display:grid;grid-template-columns:1fr 1fr}
.ba-images figure{margin:0;position:relative;overflow:hidden}
.ba-images img{width:100%;height:720px;object-fit:cover;display:block}
.ba-images figcaption{position:absolute;left:1rem;bottom:1rem;background:rgba(0,0,0,.72);padding:.55rem .8rem;font-size:.72rem;letter-spacing:.18em}

@media(max-width:800px){
  .site-header .logo-brand img{width:56px;height:56px}
  .work-grid{grid-template-columns:1fr}
  .work-card img{height:500px}
  .ba-images img{height:430px}
  .work-card figcaption,.ba-title{align-items:flex-start;flex-direction:column}
  .footer-brand.logo-brand img{width:78px;height:78px}
}

.hero-storefront{position:relative;isolation:isolate;overflow:hidden}
.hero-storefront .hero-photo{position:absolute;inset:0;background:url("assets/salong-fasad.jpeg") center 48%/cover no-repeat;z-index:-3;transform:scale(1.015)}
.hero-storefront .hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(7,7,7,.84) 0%,rgba(7,7,7,.58) 42%,rgba(7,7,7,.20) 72%,rgba(7,7,7,.12) 100%)}
@media(max-width:800px){.hero-storefront .hero-photo{background-position:58% center}.hero-storefront .hero-shade{background:linear-gradient(180deg,rgba(7,7,7,.46),rgba(7,7,7,.82))}}


/* Prislista */
.prices{background:#fff;color:#171717}
.prices-head{max-width:820px;margin:2rem 0 4rem}
.prices-head h2{font-size:clamp(3rem,7vw,7rem);line-height:.9;margin:.3rem 0 1.5rem}
.prices-head>p:last-child{max-width:650px;line-height:1.7;color:#5f5f5f}
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#d9d4cc;border:1px solid #d9d4cc}
.price-card{background:#f8f6f2;padding:2.4rem}
.price-number{font-size:.7rem;letter-spacing:.2em;color:var(--sa-coral)}
.price-card h3{font-family:"Playfair Display",serif;font-size:clamp(2rem,3vw,3.2rem);margin:.7rem 0 2rem}
.price-row{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;padding:1.05rem 0;border-top:1px solid #d8d2c9}
.price-row span{font-size:.95rem}
.price-row b{font-size:.9rem;white-space:nowrap}
.price-cta{margin-top:1.5rem;padding:2.5rem;background:#111;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.price-cta>div>span{font-size:.7rem;letter-spacing:.2em;color:var(--sa-orange)}
.price-cta h3{font-family:"Playfair Display",serif;font-size:clamp(2rem,4vw,4rem);line-height:1;margin:.7rem 0 0}
@media(max-width:800px){
  .price-grid{grid-template-columns:1fr}
  .price-card{padding:1.6rem}
  .price-cta{align-items:flex-start;flex-direction:column;padding:1.8rem}
  .price-row{gap:.8rem}
}

.treatment-link{
  color:inherit;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  font-size:.95rem;
  transition:opacity .2s ease, transform .2s ease;
}
.treatment-link span{
  color:var(--sa-coral);
  font-size:.8rem;
}
.treatment-link:hover{
  opacity:.65;
  transform:translateX(3px);
}


/* Team */
.team{background:#111;color:#fff}
.team-head{max-width:850px;margin:2rem 0 4rem}
.team-head h2{font-size:clamp(3rem,7vw,7rem);line-height:.9;margin:.3rem 0 1.5rem}
.team-head>p:last-child{max-width:650px;line-height:1.7;color:#b8b8b8}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#383838;border:1px solid #383838}
.team-card{background:#181818;min-width:0}
.team-photo{aspect-ratio:4/5;overflow:hidden;background:#222}
.team-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .6s ease}
.team-card:hover .team-photo img{transform:scale(1.025)}
.team-copy{padding:1.7rem}
.team-index{font-size:.7rem;letter-spacing:.2em;color:var(--sa-orange)}
.team-copy h3{font-family:"Playfair Display",serif;font-size:clamp(1.8rem,2.5vw,2.8rem);line-height:1;margin:.7rem 0}
.team-role{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:var(--sa-coral);margin-bottom:1rem}
.team-copy>p:not(.team-role){color:#b8b8b8;line-height:1.6;min-height:3.2em}
.team-copy>a{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.4rem;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:.35rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}
.team-copy>a span{color:var(--sa-orange)}
@media(max-width:800px){
  .team-grid{grid-template-columns:1fr}
  .team-photo{aspect-ratio:4/4.8}
  .team-copy>p:not(.team-role){min-height:auto}
}


/* Finjusterad beskärning av personalbilder – tydligare ansikten */
.team-card:nth-child(1) .team-photo img{
  object-position: 50% 18%;
  transform: scale(1.32);
}
.team-card:nth-child(2) .team-photo img{
  object-position: 50% 25%;
  transform: scale(1.12);
}
.team-card:nth-child(3) .team-photo img{
  object-position: 72% 16%;
  transform: scale(1.48);
}
.team-card:nth-child(1):hover .team-photo img{transform:scale(1.35)}
.team-card:nth-child(2):hover .team-photo img{transform:scale(1.15)}
.team-card:nth-child(3):hover .team-photo img{transform:scale(1.51)}

@media (max-width: 700px){
  .team-card:nth-child(1) .team-photo img{
    object-position: 50% 15%;
    transform: scale(1.28);
  }
  .team-card:nth-child(2) .team-photo img{
    object-position: 50% 22%;
    transform: scale(1.08);
  }
  .team-card:nth-child(3) .team-photo img{
    object-position: 70% 14%;
    transform: scale(1.42);
  }
}


/* V10 – tydlig porträttbeskärning. Ligger sist för att vinna över äldre team-regler. */
.team-grid .team-photo{
  aspect-ratio: 4 / 4.35 !important;
  height: auto !important;
}
.team-grid .team-card .team-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  transition:transform .6s ease !important;
}
.team-grid .team-card:nth-child(1) .team-photo img{
  object-position:50% 13% !important;
  transform:scale(1.58) !important;
}
.team-grid .team-card:nth-child(2) .team-photo img{
  object-position:50% 18% !important;
  transform:scale(1.28) !important;
}
.team-grid .team-card:nth-child(3) .team-photo img{
  object-position:78% 10% !important;
  transform:scale(1.82) !important;
}
.team-grid .team-card:nth-child(1):hover .team-photo img{transform:scale(1.61) !important}
.team-grid .team-card:nth-child(2):hover .team-photo img{transform:scale(1.31) !important}
.team-grid .team-card:nth-child(3):hover .team-photo img{transform:scale(1.85) !important}

@media(max-width:800px){
  .team-grid .team-photo{
    aspect-ratio: 4 / 4.15 !important;
  }
  .team-grid .team-card:nth-child(1) .team-photo img{
    object-position:50% 11% !important;
    transform:scale(1.62) !important;
  }
  .team-grid .team-card:nth-child(2) .team-photo img{
    object-position:50% 16% !important;
    transform:scale(1.30) !important;
  }
  .team-grid .team-card:nth-child(3) .team-photo img{
    object-position:80% 9% !important;
    transform:scale(1.88) !important;
  }
}
