:root{
  --orange:#e36f12;
  --orange-dark:#b94f00;
  --ink:#171717;
  --muted:#666;
  --paper:#ffffff;
  --soft:#f5f3ef;
  --line:#e6e2dc;
  --blue:#087daa;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
main{overflow:hidden}

/* HEADER */
.site-header{
  height:96px;
  display:flex;
  align-items:center;
  padding:0 4.5vw;
  background:#fff;
  position:relative;
  z-index:30;
}
.site-logo{display:flex;align-items:center;flex:0 0 auto}
.site-logo img{width:150px;max-height:76px;object-fit:contain}
.site-nav{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:34px}
.site-nav a{font-size:11px;font-weight:800;letter-spacing:.075em;text-transform:uppercase;position:relative;padding:38px 0 35px}
.site-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:2px;background:var(--orange);transition:.25s}
.site-nav a:hover::after,.site-nav a.active::after{right:0}
.site-nav a.active{color:var(--orange-dark)}
.brand-line{height:4px;background:var(--orange);position:relative;z-index:29}
.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;padding:8px;cursor:pointer}
.menu-toggle span{width:28px;height:2px;background:#111;display:block;margin:6px 0;transition:.25s}

/* GLOBAL */
.section{max-width:1240px;margin:0 auto;padding:110px 34px}
.section-narrow{max-width:1180px;margin:0 auto;padding:95px 34px}
.section-head{margin-bottom:55px}.section-head.centered{text-align:center}
.section-head span,.kicker,.page-intro>span,.story-heading span,.story-ending>span{display:block;color:var(--orange);font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;margin-bottom:12px}
.section-head h1,.section-head h2{font-size:clamp(38px,4.4vw,68px);line-height:1.02;letter-spacing:-.04em;margin:0;font-weight:800}
.center-action{text-align:center;margin-top:44px}
.btn-dark,.btn-instagram,.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 26px;border:0;background:#111;color:#fff;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;transition:.25s}
.btn-dark:hover,.btn:hover{background:var(--orange);transform:translateY(-2px)}
.btn-instagram{background:var(--blue)}.btn-instagram:hover{filter:brightness(.92);transform:translateY(-2px)}

/* HOME HERO */
.hero-video{height:calc(100svh - 100px);min-height:640px;background:#111;position:relative;overflow:hidden}
.hero-video video{width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.25))}
.hero-scroll{position:absolute;bottom:30px;right:4.5vw;color:#fff;font-size:10px;font-weight:800;letter-spacing:.18em;text-shadow:0 1px 6px rgba(0,0,0,.5)}
.hero-scroll span{font-size:20px;margin-left:10px}

/* TEAM */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.team-card{min-width:0}
.team-photo{background:#f1f1ef;overflow:hidden;aspect-ratio:3/4}
.team-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .55s ease}
.team-card:hover .team-photo img{transform:scale(1.025)}
.team-card h2{font-size:24px;margin:20px 0 0;line-height:1;font-weight:900;text-transform:uppercase;letter-spacing:-.02em}
.team-card .role{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--orange-dark);font-weight:800;margin:7px 0 14px}
.team-card>p:last-child{font-size:13px;color:#535353;line-height:1.65;margin:0}

/* LOYALTY */
.loyalty-section{padding:95px 34px;background:var(--soft)}
.loyalty-wrap{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:390px 1fr;background:#fff;box-shadow:0 18px 55px rgba(0,0,0,.07)}
.loyalty-mark{background:linear-gradient(145deg,#ef8c28,var(--orange));display:grid;place-items:center;padding:70px}
.loyalty-mark img{width:250px;filter:brightness(0) invert(1)}
.loyalty-copy{padding:72px 70px}
.loyalty-copy h2{font-size:clamp(36px,4vw,58px);line-height:1;letter-spacing:-.04em;margin:8px 0 22px}
.loyalty-copy p{max-width:580px;color:#555}

/* INSTAGRAM */
.instagram-section{padding-bottom:105px}
.instagram-profile{display:flex;align-items:center;gap:16px;margin:0 0 28px}
.instagram-profile img{width:62px;height:62px;object-fit:contain}
.instagram-profile div{display:flex;flex-direction:column}.instagram-profile strong{font-size:15px;text-transform:uppercase}.instagram-profile small{font-size:11px;color:#777;margin-top:2px}
.instagram-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.instagram-grid img{width:100%;aspect-ratio:1/1;object-fit:cover}

/* HOME GALLERY */
.looks-section{padding-top:80px}
.home-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.home-gallery img{width:100%;height:440px;object-fit:cover}

/* PAGE INTRO */
.page-intro{min-height:430px;padding:100px max(5vw,34px) 76px;display:flex;flex-direction:column;justify-content:flex-end;background:#f4f3f0}
.page-intro h1{max-width:1000px;margin:0;font-size:clamp(52px,6.6vw,108px);line-height:.92;letter-spacing:-.055em;font-weight:900}
.page-intro p{max-width:690px;color:#575757;font-size:18px;margin:28px 0 0}

/* EQUIPO STORY */
.team-page-cards{padding-top:85px;padding-bottom:115px}
.story-heading{background:#111;color:#fff;padding:100px max(5vw,34px)}
.story-heading>div{max-width:1180px;margin:auto}
.story-heading h2{max-width:1000px;margin:0;font-size:clamp(44px,5.5vw,82px);line-height:1;letter-spacing:-.045em}
.story-row{max-width:1180px;margin:0 auto;padding:120px 34px;display:grid;grid-template-columns:.92fr 1.08fr;gap:90px;align-items:start}
.story-row.reverse{grid-template-columns:1.08fr .92fr}
.story-image img{width:100%;height:auto;max-height:720px;object-fit:cover}.story-image-tall img{max-height:850px}
.story-copy{font-size:16px;line-height:1.82;color:#444;padding-top:10px}.story-copy p{margin:0 0 25px}.story-copy .lead{font-size:29px;color:#111;font-weight:800;line-height:1.25}.story-highlight{font-size:28px!important;color:var(--orange-dark)!important;font-weight:900;line-height:1.2!important;margin:34px 0!important}
.story-callout{background:#f4efe7;padding:100px 30px;text-align:center}.story-callout p{margin:0;font-size:26px}.story-callout strong{display:block;font-size:clamp(36px,5vw,72px);line-height:1.05;letter-spacing:-.04em;margin-top:8px}
.growth-banner{padding:105px 30px;background:var(--orange);color:#fff;text-align:center}.growth-banner span{display:block;font-size:24px}.growth-banner strong{display:block;font-size:clamp(46px,6vw,88px);line-height:1;letter-spacing:-.045em;margin-top:6px}
.story-final{max-width:1180px;margin:0 auto;padding:120px 34px}.story-final>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:70px;color:#505050;font-size:17px;line-height:1.8;margin-bottom:105px}.story-final p{margin-top:0}.story-ending{border-top:1px solid var(--line);padding-top:85px}.story-ending h2{max-width:980px;font-size:clamp(42px,5vw,78px);line-height:1;letter-spacing:-.04em;margin:0 0 35px}.story-ending>p{max-width:790px;font-size:17px;color:#555}.story-ending .final-quote{font-size:clamp(28px,3.1vw,46px);line-height:1.22;color:#111;font-weight:800;max-width:960px;margin-top:50px}

/* SERVICES */
.services-intro{background:#fff}
.reservation-policy-wrap{padding:0 34px 70px}
.reservation-policy{max-width:1120px;margin:0 auto;background:#f5f1ea;border-left:5px solid var(--orange);padding:46px 52px}
.policy-label{font-size:10px;font-weight:900;letter-spacing:.18em;color:var(--orange-dark)}
.reservation-policy h2{font-size:31px;margin:7px 0 22px;line-height:1.1}.reservation-policy p{color:#555;max-width:900px;margin:0 0 13px}.reservation-policy strong{display:block;margin-top:20px;font-size:14px}
.service-category{border-top:1px solid #eee}
.category-head{display:flex;align-items:baseline;gap:22px;margin-bottom:70px}.category-head>span{font-size:12px;color:var(--orange);font-weight:900}.category-head h2{font-size:clamp(42px,5vw,72px);margin:0;line-height:1;letter-spacing:-.045em}
.service-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center;margin-bottom:105px}.service-feature.reverse{grid-template-columns:.9fr 1.1fr}.service-feature.reverse .service-media{order:2}
.service-media{overflow:hidden;background:#f3f3f3}.service-media img{width:100%;height:500px;object-fit:cover}
.service-content{min-width:0}.service-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.service-content h3,.product-service h3,.treatment-card h3{font-size:clamp(30px,3vw,46px);line-height:1;letter-spacing:-.035em;margin:0 0 22px}.service-content p,.product-service p,.treatment-card p{color:#555;line-height:1.7}
.price{flex:0 0 auto;background:#111;color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:11px 15px;white-space:nowrap}
.clean-list{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px;list-style:none;padding:0;margin:24px 0}.clean-list li{border-bottom:1px solid var(--line);padding:7px 0;font-size:13px;font-weight:700}.clean-list li::before{content:"+";color:var(--orange);margin-right:9px}
.technical-intro{max-width:850px;margin:0 0 55px}.technical-intro h3{font-size:34px;margin:0 0 12px}.technical-intro p{color:#555}
.product-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:100px}.product-service{background:#f6f5f2}.product-service img{width:100%;aspect-ratio:1/1;object-fit:cover}.product-service>div{padding:27px}.product-service h3{font-size:28px}.product-service .service-title-row{display:block}.product-service .price{display:inline-block;margin-bottom:5px}.product-service p{font-size:13px}
.illumination-service{margin-bottom:0}
.treatment-area{background:#151515;color:#fff;padding:105px 0;border:0}.category-head.light h2{color:#fff}.category-head.light>span{color:#ff9b4b}
.treatment-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.treatment-card{background:#222;overflow:hidden}.treatment-card img{width:100%;height:360px;object-fit:cover}.treatment-body{padding:34px}.treatment-card h3{font-size:34px}.treatment-card p{color:#c9c9c9;font-size:14px}.treatment-card .price{background:var(--orange)}.benefit-list{list-style:none;padding:0;margin:25px 0 0}.benefit-list li{padding:10px 0;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#eee}.benefit-list li::before{content:"+";color:#ff9b4b;font-weight:900;margin-right:9px}.treatment-card.no-image{grid-column:1/-1}.treatment-card.no-image .treatment-body{padding:50px}.treatment-card.no-image .service-title-row{align-items:center}.fall-types{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:30px 0}.fall-types>div{border:1px solid rgba(255,255,255,.12);padding:23px}.fall-types strong{text-transform:uppercase;color:#fff;font-size:12px;letter-spacing:.08em}.fall-types p{margin-bottom:0}

/* GALLERY */
.gallery-section{max-width:1320px;margin:0 auto;padding:90px 28px 120px}.gallery-masonry{columns:3 320px;column-gap:14px}.gallery-item{display:block;width:100%;padding:0;border:0;background:transparent;margin:0 0 14px;cursor:zoom-in;break-inside:avoid;overflow:hidden}.gallery-item img{width:100%;height:auto;transition:transform .45s}.gallery-item:hover img{transform:scale(1.015)}
.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.94);display:none;place-items:center;padding:4vw}.lightbox.open{display:grid}.lightbox img{max-width:92vw;max-height:90vh;object-fit:contain}.lightbox-close{position:absolute;right:24px;top:12px;background:none;border:0;color:#fff;font-size:48px;cursor:pointer}

/* OLD / REMAINING PAGES */
.interior-spacer{height:80px}.interior-spacer.small{height:55px}
.about-original{max-width:900px;margin:0 auto;padding:70px 28px 120px;color:#555}.about-original h1{text-align:center;font-size:22px;line-height:1.35;color:#222;margin-bottom:70px}.about-original p{font-size:15px;line-height:1.75}.about-float{display:grid;grid-template-columns:280px 1fr;gap:35px;align-items:start;margin:38px 0}.about-float.right{grid-template-columns:1fr 280px}.about-float img{width:100%;max-height:400px;object-fit:cover}
.page-hero{min-height:390px;padding:100px 5vw 70px;background:#f4f3f0;display:flex;flex-direction:column;justify-content:flex-end}.page-hero h1{font-size:clamp(52px,7vw,100px);margin:0;line-height:.95}.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:900;color:var(--orange);margin:0 0 12px}.content-section{max-width:1180px;margin:0 auto;padding:90px 34px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-copy h2{font-size:50px;line-height:1;margin:0 0 25px}.contact-line{display:flex;flex-direction:column;border-bottom:1px solid var(--line);padding:16px 0;font-size:19px}.contact-line small{text-transform:uppercase;font-size:9px;letter-spacing:.13em;color:var(--orange);font-weight:800}.contact-form{display:grid;gap:18px}.contact-form label{text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.1em}.contact-form input,.contact-form textarea{width:100%;display:block;border:0;border-bottom:1px solid #bbb;padding:12px 0;background:transparent;outline:none}.honeypot{position:absolute!important;left:-9999px!important}.pagehead,.legal,.thanks-page{min-height:60vh;padding:120px 6vw;max-width:1180px;margin:0 auto}.pagehead h1,.legal h1,.thanks-page h1{font-size:clamp(50px,7vw,90px);line-height:1;margin:0 0 30px}

/* FOOTER */
.original-footer{background:#101010;color:#fff;text-align:center;padding:70px 28px 34px}.original-footer img{width:160px;margin:0 auto 28px;filter:brightness(0) invert(1)}.original-footer>div{display:flex;justify-content:center;gap:30px;flex-wrap:wrap}.original-footer a{font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.original-footer a:hover{color:#ff9b4b}.original-footer p{font-size:12px;color:#bbb;margin:24px 0 10px}.original-footer small{font-size:10px;color:#777}

@media(max-width:980px){
  .site-header{height:82px;padding:0 22px}.site-logo img{width:125px}.brand-line{height:3px}.menu-toggle{display:block;position:relative;z-index:32}.site-nav{position:fixed;inset:85px 0 0;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transform:translateX(100%);transition:.32s;z-index:31}.site-nav.open{transform:none}.site-nav a{font-size:16px;padding:13px 20px}.site-nav a::after{bottom:7px}.hero-video{height:calc(100svh - 85px);min-height:560px}.hero-scroll{right:24px}
  .team-grid{grid-template-columns:1fr;max-width:580px;margin:auto}.team-card{margin-bottom:30px}
  .loyalty-wrap{grid-template-columns:1fr}.loyalty-mark{min-height:260px}.loyalty-copy{padding:50px 35px}
  .home-gallery{grid-template-columns:1fr 1fr}.home-gallery img{height:390px}
  .story-row,.story-row.reverse{grid-template-columns:1fr;gap:45px;padding:80px 24px}.story-row.reverse .story-image{order:-1}.story-final>div:first-child{grid-template-columns:1fr;gap:10px}.story-final{padding:85px 24px}
  .service-feature,.service-feature.reverse{grid-template-columns:1fr;gap:35px}.service-feature.reverse .service-media{order:0}.service-media img{height:auto;max-height:520px}.product-services-grid{grid-template-columns:1fr}.product-service{display:grid;grid-template-columns:1fr 1fr}.product-service img{height:100%;aspect-ratio:auto}.treatment-grid{grid-template-columns:1fr}.treatment-card.no-image{grid-column:auto}.fall-types{grid-template-columns:1fr}
  .contact-layout{grid-template-columns:1fr}.about-float,.about-float.right{grid-template-columns:1fr}.about-float.right img{order:-1}
}

@media(max-width:620px){
  .section,.section-narrow{padding:75px 20px}.page-intro{min-height:330px;padding:70px 20px 50px}.page-intro h1{font-size:49px}.page-intro p{font-size:16px}.hero-video{min-height:500px}.hero-video video{object-position:center center}
  .instagram-grid{grid-template-columns:1fr 1fr}.home-gallery{grid-template-columns:1fr 1fr;gap:5px}.home-gallery img{height:260px}.loyalty-section{padding:65px 20px}.loyalty-mark{padding:50px}.loyalty-copy{padding:38px 25px}.loyalty-copy h2{font-size:38px}
  .story-heading{padding:70px 20px}.story-callout,.growth-banner{padding:75px 20px}.story-callout p{font-size:19px}.story-final{padding:70px 20px}.story-ending{padding-top:60px}
  .reservation-policy-wrap{padding:0 20px 50px}.reservation-policy{padding:32px 25px}.category-head{margin-bottom:45px}.service-feature{margin-bottom:75px}.service-title-row{display:block}.price{display:inline-block;margin:5px 0 15px}.clean-list{grid-template-columns:1fr}.product-service{grid-template-columns:1fr}.treatment-area{padding:75px 0}.treatment-body,.treatment-card.no-image .treatment-body{padding:28px 22px}.treatment-card img{height:auto}.gallery-section{padding:65px 14px 90px}.gallery-masonry{columns:2 150px;column-gap:8px}.gallery-item{margin-bottom:8px}
  .content-section{padding:70px 20px}.contact-copy h2{font-size:40px}
}

/* TIENDA - PRÓXIMAMENTE */
.shop-coming-soon{width:100%;background:#111;line-height:0;overflow:hidden}
.shop-coming-soon img{width:100%;height:auto;display:block}
@media(min-width:981px){.shop-coming-soon img{min-height:calc(100svh - 100px);object-fit:cover;object-position:center}}


/* === CONTACTO 2026 === */
.contact-hero{background:#f4f3f0}
.contact-info-section{max-width:1180px;margin:0 auto;padding:105px 34px 85px}
.contact-intro{max-width:780px;margin-bottom:58px}
.contact-intro h2,.hours-title h2,.map-heading h2{font-size:clamp(46px,5.5vw,76px);line-height:.98;margin:0 0 22px;letter-spacing:-.035em}
.contact-intro>p:last-child,.hours-title>p:last-child,.map-heading>p:last-child{font-size:17px;line-height:1.7;color:#5a5a5a;max-width:680px}
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.contact-card{min-height:230px;border:1px solid #ddd;background:#fff;padding:32px;display:flex;flex-direction:column;justify-content:flex-end;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.contact-card:hover{transform:translateY(-5px);border-color:var(--orange);box-shadow:0 18px 38px rgba(0,0,0,.06)}
.contact-card-label{font-size:10px;letter-spacing:.18em;font-weight:900;color:var(--orange);margin-bottom:auto}
.contact-card strong{font-size:clamp(19px,2vw,27px);line-height:1.15;margin:35px 0 12px;overflow-wrap:anywhere}
.contact-card small{font-size:13px;line-height:1.55;color:#6a6a6a}
.hours-section{background:#111;color:#fff;padding:100px max(34px,calc((100vw - 1112px)/2));display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:start}
.hours-title .eyebrow{color:var(--orange)}
.hours-title>p:last-child{color:rgba(255,255,255,.65)}
.hours-list{border-top:1px solid rgba(255,255,255,.18)}
.hours-list>div{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.hours-list span{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.6)}
.hours-list strong{text-align:right;font-size:15px;font-weight:700}
.map-section{max-width:1180px;margin:0 auto;padding:105px 34px 115px}
.map-heading{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:44px}
.map-frame{overflow:hidden;background:#eee;min-height:420px}
.map-frame iframe{display:block;width:100%;min-height:520px;filter:saturate(.88) contrast(.96)}
.contact-cta{background:#e95727;color:#fff;padding:70px max(34px,calc((100vw - 1112px)/2));display:flex;align-items:center;justify-content:space-between;gap:50px}
.contact-cta span{font-size:10px;letter-spacing:.18em;font-weight:900}
.contact-cta h2{font-size:clamp(38px,4.5vw,64px);line-height:1;margin:10px 0 0;letter-spacing:-.035em}
.contact-cta a{white-space:nowrap;border:1px solid rgba(255,255,255,.75);padding:15px 24px;font-size:11px;letter-spacing:.12em;font-weight:900;transition:.2s}
.contact-cta a:hover{background:#fff;color:#111}
@media(max-width:900px){
  .contact-info-section,.map-section{padding:75px 24px}
  .contact-cards{grid-template-columns:1fr}
  .contact-card{min-height:190px}
  .hours-section{grid-template-columns:1fr;gap:45px;padding:75px 24px}
  .contact-cta{padding:58px 24px;align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .hours-list>div{align-items:flex-start;flex-direction:column;gap:5px}
  .hours-list strong{text-align:left}
  .map-frame iframe{min-height:430px;height:430px}
}


/* --- TARJETA DE FIDELIDAD --- */
.loyalty-mark{
  background:#fff !important;
  padding:0 !important;
  overflow:hidden !important;
}
.loyalty-mark img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:contain !important;
  display:block !important;
  filter:none !important;
  opacity:1 !important;
  transform:none !important;
}

/* =========================================================
   AYA ESTILISTES — PREMIUM EDITORIAL SKIN 2026
   Visual-only layer. No content changes.
   ========================================================= */
:root{
  --aya-cream:#f2eee8;
  --aya-warm:#e9e2d9;
  --aya-charcoal:#171615;
  --aya-black:#0d0d0c;
  --aya-orange:#e36f12;
}
body{background:var(--aya-cream)}
.site-header{background:rgba(255,255,255,.96);box-shadow:0 8px 30px rgba(24,18,12,.05)}
.brand-line{height:3px}

/* Editorial section rhythm */
.team-section{background:linear-gradient(180deg,#f5f2ed 0%,#ece6de 100%);position:relative}
.team-section::before{content:"";position:absolute;left:0;top:0;width:28%;height:1px;background:var(--aya-orange)}
.team-card{background:#fff;padding:0 0 26px;box-shadow:0 18px 50px rgba(35,25,15,.07);transition:transform .35s ease,box-shadow .35s ease}
.team-card:hover{transform:translateY(-7px);box-shadow:0 26px 65px rgba(35,25,15,.12)}
.team-card h2,.team-card .role,.team-card>p:last-child{margin-left:24px;margin-right:24px}
.team-photo{aspect-ratio:4/5}

.loyalty-section{background:var(--aya-charcoal);padding-top:115px;padding-bottom:115px}
.loyalty-wrap{box-shadow:0 28px 80px rgba(0,0,0,.25)}
.loyalty-copy{background:#fff;position:relative}
.loyalty-copy::before{content:"";position:absolute;top:0;left:0;width:72px;height:4px;background:var(--aya-orange)}

.instagram-section{background:#f7f4ef;padding-top:105px}
.instagram-grid{gap:8px}
.instagram-grid img{filter:saturate(.92);transition:transform .4s ease,filter .4s ease}
.instagram-grid img:hover{transform:scale(.985);filter:saturate(1.05)}

.looks-section{background:var(--aya-black);color:#fff;padding-bottom:115px}
.looks-section .section-head span{color:#f08a37}
.looks-section .section-head h2{color:#fff}
.home-gallery{gap:10px;padding:0 10px}
.home-gallery img{height:500px;filter:saturate(.9) contrast(1.02);transition:filter .35s ease,transform .35s ease}
.home-gallery img:hover{filter:saturate(1.05) contrast(1);transform:translateY(-5px)}
.looks-section .btn-dark{background:#fff;color:#111}
.looks-section .btn-dark:hover{background:var(--aya-orange);color:#fff}

/* Interior pages */
.page-intro,.page-hero,.contact-hero{background:linear-gradient(135deg,#eee8e0 0%,#f8f6f2 62%,#e9e1d7 100%);position:relative}
.page-intro::after,.page-hero::after{content:"";position:absolute;right:5vw;bottom:0;width:120px;height:4px;background:var(--aya-orange)}
.page-intro h1,.page-hero h1{text-shadow:0 1px 0 rgba(255,255,255,.7)}

/* Services: warm alternating editorial canvas */
.services-intro + .reservation-policy-wrap{background:#f5f1eb}
.reservation-policy{background:var(--aya-charcoal);color:#fff;border:0;box-shadow:0 24px 65px rgba(30,22,14,.14)}
.reservation-policy p{color:rgba(255,255,255,.72)}
.service-category{position:relative}
.service-category:nth-of-type(even){background:#f3eee7;max-width:none;padding-left:max(34px,calc((100vw - 1112px)/2));padding-right:max(34px,calc((100vw - 1112px)/2))}
.category-head{border-bottom:1px solid #d8cfc4;padding-bottom:24px}
.category-head span{color:var(--aya-orange)}
.service-feature,.product-service{background:#fff;box-shadow:0 20px 60px rgba(35,25,15,.075)}
.service-feature .service-content{padding:36px 38px}
.product-service>div{padding:28px}
.treatment-area{background:var(--aya-charcoal)!important;color:#fff}
.treatment-area .category-head{border-color:rgba(255,255,255,.16)}
.treatment-area .category-head h2{color:#fff}
.treatment-card{background:#242321;border-color:rgba(255,255,255,.1);box-shadow:none}
.treatment-card p,.treatment-card li{color:rgba(255,255,255,.72)}
.treatment-card h3{color:#fff}

/* Team story */
.team-page-cards{background:#f2eee8}
.story-row{position:relative}
.story-row:nth-of-type(even){background:#f1ece5;max-width:none;padding-left:max(34px,calc((100vw - 1112px)/2));padding-right:max(34px,calc((100vw - 1112px)/2))}
.story-image img{box-shadow:0 28px 75px rgba(30,22,15,.14)}
.story-copy .lead{color:#1a1816}

/* Gallery */
.gallery-section{background:#f1ece5;max-width:none;padding-left:max(28px,calc((100vw - 1264px)/2));padding-right:max(28px,calc((100vw - 1264px)/2))}
.gallery-item{box-shadow:0 12px 30px rgba(25,18,12,.08)}

/* Contact */
.contact-info-section,.map-section{background:#f5f1eb;max-width:none;padding-left:max(34px,calc((100vw - 1112px)/2));padding-right:max(34px,calc((100vw - 1112px)/2))}
.contact-card{border:0;box-shadow:0 15px 45px rgba(35,25,15,.07)}
.map-frame{box-shadow:0 22px 60px rgba(30,22,15,.12)}
.hours-section{background:var(--aya-charcoal)}
.contact-cta{background:var(--aya-orange)}

/* Premium buttons */
.btn-dark,.btn-instagram,.btn,.contact-cta a{border-radius:0;min-height:46px;transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease}
.btn-dark:hover,.btn:hover,.btn-instagram:hover{box-shadow:0 10px 25px rgba(0,0,0,.15)}

/* Footer depth */
.original-footer{background:#090909;border-top:4px solid var(--aya-orange);padding-top:82px}

@media(max-width:980px){
 .team-card{padding-bottom:22px}
 .loyalty-section{padding-top:80px;padding-bottom:80px}
 .home-gallery img{height:390px}
 .service-category:nth-of-type(even),.story-row:nth-of-type(even),.contact-info-section,.map-section{padding-left:24px;padding-right:24px}
 .service-feature .service-content{padding:26px 24px}
}
@media(max-width:620px){
 .team-section::before{width:45%}
 .instagram-section{padding-top:75px}
 .looks-section{padding-bottom:80px}
 .home-gallery{padding:0 5px;gap:5px}
 .home-gallery img{height:275px}
 .loyalty-section{padding-top:65px;padding-bottom:65px}
}


/* =========================================================
   FILOSOFÍA — AYA ESTILISTES
   ========================================================= */
.philosophy-hero{max-width:1440px;margin:0 auto;min-height:720px;display:grid;grid-template-columns:.95fr 1.05fr;background:#111;color:#fff}
.philosophy-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:90px clamp(38px,6vw,95px);position:relative}
.philosophy-hero-copy::before{content:"";position:absolute;left:clamp(38px,6vw,95px);top:86px;width:62px;height:3px;background:var(--aya-orange,#e36f12)}
.philosophy-kicker{color:#f08a37;font-size:10px;font-weight:900;letter-spacing:.22em;text-transform:uppercase;margin:28px 0 22px}
.philosophy-hero h1{font-size:clamp(54px,6.2vw,98px);line-height:.91;letter-spacing:-.055em;margin:0;max-width:650px;font-weight:900}
.philosophy-hero-copy p{max-width:520px;margin:34px 0 0;color:rgba(255,255,255,.68);font-size:18px;line-height:1.75}
.philosophy-hero-image{min-height:720px;position:relative;overflow:hidden}
.philosophy-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center center}
.philosophy-hero-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,17,17,.20),transparent 30%);pointer-events:none}
.philosophy-photo-label{position:absolute;right:0;bottom:0;z-index:2;background:var(--aya-orange,#e36f12);color:#fff;padding:13px 22px;font-size:9px;font-weight:900;letter-spacing:.18em}

.philosophy-intro{max-width:1180px;margin:0 auto;padding:125px 34px;display:grid;grid-template-columns:70px 1fr 1fr;gap:52px;align-items:start}
.philosophy-intro-number{color:var(--aya-orange,#e36f12);font-size:11px;font-weight:900;padding-top:8px}
.philosophy-intro-title>span{color:var(--aya-orange,#e36f12);font-size:10px;font-weight:900;letter-spacing:.22em}
.philosophy-intro-title h2{margin:17px 0 0;font-size:clamp(38px,4.2vw,64px);line-height:1;letter-spacing:-.045em}
.philosophy-intro-copy{border-left:1px solid #d8d0c7;padding-left:42px;color:#555;font-size:16px;line-height:1.85}
.philosophy-intro-copy p:first-child{margin-top:0}

.philosophy-values{background:#f1ece5;display:grid;grid-template-columns:repeat(4,1fr);max-width:1440px;margin:0 auto;border-top:1px solid #ded5ca;border-bottom:1px solid #ded5ca}
.philosophy-values article{min-height:330px;padding:55px 38px;border-right:1px solid #d8cfc4;transition:background .3s ease,color .3s ease,transform .3s ease}
.philosophy-values article:last-child{border-right:0}
.philosophy-values article:hover{background:#171717;color:#fff;transform:translateY(-4px)}
.philosophy-values article>span{color:var(--aya-orange,#e36f12);font-size:10px;font-weight:900;letter-spacing:.15em}
.philosophy-values h3{margin:50px 0 18px;font-size:29px;letter-spacing:-.03em}
.philosophy-values p{margin:0;font-size:14px;line-height:1.75;color:#666}
.philosophy-values article:hover p{color:rgba(255,255,255,.68)}

.philosophy-editorial{max-width:1180px;margin:0 auto;padding:135px 34px;display:grid;grid-template-columns:260px 1fr;gap:80px}
.philosophy-editorial-side span{display:block;color:var(--aya-orange,#e36f12);font-size:10px;font-weight:900;letter-spacing:.22em}
.philosophy-line{width:100%;height:1px;background:#d9d1c7;margin-top:22px}
.philosophy-editorial-main{max-width:800px;color:#555;font-size:17px;line-height:1.85}
.philosophy-editorial-main .philosophy-lead{color:#171717;font-size:clamp(34px,4vw,58px);font-weight:900;line-height:1.05;letter-spacing:-.04em;margin:0 0 42px}
.philosophy-editorial-main p{margin:0 0 26px}

.philosophy-closing{background:#111;color:#fff;text-align:center;padding:120px 28px 130px;position:relative;overflow:hidden}
.philosophy-closing::before{content:"AYA";position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);font-size:min(30vw,430px);font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.025);pointer-events:none}
.philosophy-closing>span{position:relative;display:block;color:#f08a37;font-size:10px;font-weight:900;letter-spacing:.24em;margin-bottom:22px}
.philosophy-closing h2{position:relative;margin:0 auto;max-width:1050px;font-size:clamp(50px,6.5vw,100px);line-height:.93;letter-spacing:-.055em}

@media(min-width:981px){
  .site-nav{gap:27px}
  .site-nav a{font-size:10px}
}
@media(max-width:980px){
  .philosophy-hero{grid-template-columns:1fr;min-height:auto}
  .philosophy-hero-copy{padding:90px 35px 75px}
  .philosophy-hero-copy::before{left:35px;top:65px}
  .philosophy-hero-image{min-height:620px}
  .philosophy-intro{grid-template-columns:45px 1fr;gap:30px;padding:90px 28px}
  .philosophy-intro-copy{grid-column:2;border-left:0;padding-left:0}
  .philosophy-values{grid-template-columns:1fr 1fr}
  .philosophy-values article:nth-child(2){border-right:0}
  .philosophy-values article:nth-child(-n+2){border-bottom:1px solid #d8cfc4}
  .philosophy-editorial{grid-template-columns:1fr;gap:35px;padding:95px 28px}
}
@media(max-width:620px){
  .philosophy-hero-copy{padding:78px 20px 60px}
  .philosophy-hero-copy::before{left:20px;top:55px}
  .philosophy-hero h1{font-size:52px}
  .philosophy-hero-copy p{font-size:16px}
  .philosophy-hero-image{min-height:480px}
  .philosophy-photo-label{padding:11px 14px;font-size:8px}
  .philosophy-intro{grid-template-columns:1fr;padding:75px 20px;gap:18px}
  .philosophy-intro-number{display:none}
  .philosophy-intro-copy{grid-column:auto;margin-top:18px}
  .philosophy-values{grid-template-columns:1fr}
  .philosophy-values article,.philosophy-values article:nth-child(2){border-right:0;border-bottom:1px solid #d8cfc4;min-height:auto;padding:45px 24px}
  .philosophy-values article:last-child{border-bottom:0}
  .philosophy-values h3{margin-top:30px}
  .philosophy-editorial{padding:75px 20px}
  .philosophy-closing{padding:90px 20px 100px}
}


/* =========================================================
   QUIÉNES SOMOS — REFINO PREMIUM
   ========================================================= */
.about-story-hero{
  background:#111;
  color:#fff;
  padding:92px 34px 100px;
}
.about-story-hero-inner{
  max-width:1110px;
  margin:0 auto;
}
.about-story-hero span,
.story-eyebrow,
.story-transition span{
  display:block;
  color:var(--orange);
  font-size:10px;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.about-story-hero h1{
  margin:16px 0 12px;
  font-size:clamp(48px,6vw,82px);
  line-height:.98;
  letter-spacing:-.045em;
  font-weight:850;
}
.about-story-hero p{
  margin:0;
  max-width:690px;
  color:rgba(255,255,255,.68);
  font-size:18px;
  line-height:1.7;
}

.about-story-first{
  padding-top:105px;
  padding-bottom:105px;
}
.about-story-second{
  padding-top:105px;
  padding-bottom:105px;
}
.story-eyebrow{
  margin-bottom:22px;
}
.story-copy{
  font-size:16px;
  line-height:1.82;
  color:#4c4c4c;
}
.story-copy .lead{
  font-size:clamp(27px,2.5vw,36px);
  color:#171717;
  font-weight:800;
  line-height:1.22;
  letter-spacing:-.025em;
  margin-bottom:30px;
}
.story-accent-line{
  margin:33px 0 !important;
  padding-left:20px;
  border-left:3px solid var(--orange);
  color:#171717 !important;
  font-size:20px !important;
  line-height:1.4 !important;
  font-weight:800 !important;
}

/* El "milagrito" deixa de ser un titular gegant: passa a ser una transició elegant */
.story-transition{
  max-width:1180px;
  margin:0 auto;
  padding:0 34px;
}
.story-transition>div{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:48px 0;
  display:grid;
  grid-template-columns:180px 1fr;
  gap:50px;
  align-items:start;
}
.story-transition p{
  margin:0;
  max-width:800px;
  color:#333;
  font-size:21px;
  line-height:1.65;
  letter-spacing:-.01em;
}
.story-transition strong{
  color:var(--orange-dark);
  font-weight:800;
}

/* Final més editorial i menys carregat */
.about-story-final{
  padding-top:95px;
  padding-bottom:115px;
}
.story-final .about-story-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  color:#505050;
  font-size:16px;
  line-height:1.85;
  margin-bottom:88px;
}
.about-story-ending{
  padding-top:72px;
}
.about-story-ending h2{
  max-width:900px;
  font-size:clamp(40px,4.8vw,68px);
  line-height:1.04;
  letter-spacing:-.04em;
  margin-bottom:34px;
}
.about-story-ending>p{
  max-width:760px;
  font-size:16px;
  line-height:1.8;
}

/* Neutralitzem els antics estils massa grans, per si alguna classe queda al CSS */
.story-callout,
.growth-banner{
  font-size:inherit;
}
.story-highlight{
  font-size:20px !important;
  line-height:1.4 !important;
}

@media(max-width:980px){
  .about-story-hero{padding:75px 28px 82px}
  .story-transition>div{grid-template-columns:1fr;gap:18px}
  .story-final .about-story-columns{grid-template-columns:1fr;gap:12px}
}
@media(max-width:620px){
  .about-story-hero{padding:62px 20px 68px}
  .about-story-hero p{font-size:16px}
  .about-story-first,.about-story-second{padding-top:72px;padding-bottom:72px}
  .story-transition{padding:0 20px}
  .story-transition>div{padding:36px 0}
  .story-transition p{font-size:18px}
  .story-copy .lead{font-size:27px}
  .about-story-final{padding-top:72px;padding-bottom:82px}
  .about-story-ending{padding-top:55px}
}


/* Ajuste: "milagrito de Navidad" integrado como texto normal dentro de la historia */
.about-story-second .story-copy > p:first-child{
  font-size:16px;
  line-height:1.82;
  color:#4c4c4c;
  font-weight:400;
  margin:0 0 25px;
}
