:root{--ink:#121212;--paper:#fff;--soft:#f7f7f5;--line:#deded9;--serif:"Cormorant Garamond",serif;--sans:"Inter",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:var(--sans);font-size:15px;line-height:1.55}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(28px,5vw,76px);border-bottom:1px solid #eee;background:rgba(255,255,255,.96);position:sticky;top:0;z-index:10}.brand{display:flex;flex-direction:column;line-height:1}.brand b{font:500 25px/1 var(--serif);letter-spacing:.18em}.brand span{font-size:9px;letter-spacing:.42em;margin-top:6px}.topbar nav{display:flex;gap:30px;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase}.hero{min-height:560px;display:grid;grid-template-columns:46% 39% 15%;border-bottom:1px solid #eee}.hero-copy{padding:68px 7vw 50px}.hero h1{font:500 clamp(62px,7vw,108px)/.78 var(--serif);letter-spacing:-.045em;margin:26px 0 28px}.hero-copy>p{font:400 17px/1.55 var(--serif);max-width:340px}.arrow-link{display:inline-flex;gap:25px;align-items:center;margin-top:28px;padding-top:12px;border-top:1px solid #222;font-size:10px;letter-spacing:.08em}.arrow-link i{font-style:normal;font-size:18px}.hero-img{margin:0;min-height:560px}.hero-note{padding:55px 28px;display:flex;flex-direction:column;justify-content:flex-start;gap:16px}.hero-note span{width:28px;height:1px;background:#555;margin-top:8px}.hero-note p{font:11px/1.45 var(--serif);letter-spacing:.16em}.what{display:grid;grid-template-columns:31% 44% 25%;min-height:460px;border-bottom:1px solid #eee}.what figure{margin:0}.what-copy{padding:52px 48px}.what h2,.bridge h2,.testimonials h2{font:500 clamp(38px,4vw,58px)/.98 var(--serif);margin:14px 0 25px}.two-col{columns:2;column-gap:28px}.two-col p{break-inside:avoid;margin:0 0 16px;font-size:13px}.what blockquote{margin:0;padding:72px 42px;border-left:1px solid #bbb;font:italic 28px/1.15 var(--serif);align-self:center}.what blockquote strong{font-weight:500}.bridge{display:grid;grid-template-columns:35% 35% 30%;min-height:440px;border-bottom:1px solid #eee}.bridge-head{padding:48px 5vw}.bridge-head>p{font-family:var(--serif);font-size:17px}.bridge figure{margin:0}.bridge-copy{padding:48px 4vw;font-size:13px}.bridge-copy p{margin:0 0 12px}.bridge-copy strong{display:block;font:500 20px/1.2 var(--serif);margin-top:22px}.services{background:#111;color:#f7f7f4;padding:58px clamp(30px,5vw,78px) 65px}.light{color:#aaa}.feature{display:grid;grid-template-columns:40% 60%;gap:5vw;padding:20px 0 52px;border-bottom:1px solid #444}.feature span{font-size:9px;letter-spacing:.18em}.feature h2{font:500 clamp(48px,5vw,70px)/.88 var(--serif);margin:12px 0}.feature h3{font:500 28px/1.05 var(--serif);margin:0 0 20px;max-width:680px}.feature p{color:#c9c9c5;font-size:13px;max-width:720px}.outline{display:inline-block;border:1px solid #888;padding:12px 18px;margin-top:14px;font-size:9px;letter-spacing:.08em}.other-title{display:grid;grid-template-columns:40% 60%;gap:5vw;padding:38px 0 28px}.other-title h3,.start h3{font:500 34px/1 var(--serif);margin:0}.other-title p{color:#bbb;max-width:580px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #444;border-bottom:1px solid #444}.service-grid article{padding:28px 24px 30px 0;margin-right:24px;border-right:1px solid #444}.service-grid article:last-child{border-right:0}.service-grid b{font:400 18px var(--serif);color:#aaa}.service-grid h4{font:500 23px/1 var(--serif);margin:12px 0}.service-grid p{font-size:12px;line-height:1.55;color:#c7c7c2}.start{display:grid;grid-template-columns:40% 45% 15%;align-items:start;gap:4vw;padding-top:40px}.start p{color:#bbb;margin:0}.lightlink{color:#fff;border-color:#777;margin-top:0}.testimonials{display:grid;grid-template-columns:30% 70%;gap:5vw;padding:54px clamp(30px,5vw,78px)}.testimonials>div>p{font-size:12px;max-width:360px}.quotes{display:grid;grid-template-columns:repeat(3,1fr)}.quotes blockquote{margin:0;padding:15px 30px;border-left:1px solid #ccc;font:italic 21px/1.2 var(--serif)}.quotes cite{display:block;font:normal 10px var(--sans);margin-top:25px;color:#777}.fashion-strip{height:190px;display:grid;grid-template-columns:1.05fr .95fr 1fr 1.05fr;overflow:hidden;background:#111}.fashion-strip figure{margin:0;min-width:0;overflow:hidden;border-right:1px solid rgba(255,255,255,.18)}.fashion-strip figure:last-child{border-right:0}.fashion-strip img{object-fit:cover}.fashion-strip .strip-blazer img{object-position:center 82%}.fashion-strip .strip-rack img{object-position:72% center}.contact{display:grid;grid-template-columns:25% 22% 35% 18%;align-items:center;padding:34px clamp(30px,5vw,78px);gap:28px}.contact h2{font:500 54px/1 var(--serif);margin:0}.contact div{border-left:1px solid #bbb;padding-left:28px;display:flex;flex-direction:column}.contact span{font-size:8px;letter-spacing:.16em}.contact a{font:16px var(--serif);margin-top:6px}.contact>p{font:12px var(--serif)}footer{display:flex;justify-content:space-between;padding:18px clamp(30px,5vw,78px) 32px;font-size:8px;letter-spacing:.08em;color:#777}@media(max-width:900px){.topbar nav{display:none}.hero{grid-template-columns:1fr}.hero-note{display:none}.hero-img{height:420px;min-height:0}.what,.bridge,.feature,.other-title,.start,.testimonials,.contact{grid-template-columns:1fr}.what figure,.bridge figure{height:360px}.what blockquote{border-left:0;border-top:1px solid #bbb;padding:40px}.two-col{columns:1}.service-grid{grid-template-columns:1fr 1fr}.service-grid article{border-bottom:1px solid #444}.quotes{grid-template-columns:1fr}.quotes blockquote{border-left:0;border-top:1px solid #ccc}.fashion-strip{height:130px;grid-template-columns:1fr 1fr}.fashion-strip figure:nth-child(n+3){display:none}.contact div{border-left:0;border-top:1px solid #ddd;padding:18px 0}.hero-copy{padding:50px 28px}.what-copy,.bridge-head,.bridge-copy{padding:40px 28px}}@media(max-width:560px){.service-grid{grid-template-columns:1fr}.services{padding-inline:24px}.hero h1{font-size:64px}.what h2,.bridge h2,.testimonials h2{font-size:42px}.topbar{padding-inline:22px}.contact,.testimonials{padding-inline:24px}}

/* V3: mantener la imagen editorial del hero sin mostrar rostro */
.hero-img img{object-position:center 76%}

/* v4 — ajustes aprobados: grilla de otros servicios + viñeta editorial */
.service-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border:1px solid #444;
  border-right:0;
  border-bottom:0;
}
.service-grid article{
  margin:0;
  min-height:315px;
  padding:30px 34px 32px;
  border-right:1px solid #444;
  border-bottom:1px solid #444;
}
.service-grid article:last-child{border-right:1px solid #444}
.service-grid b{font:500 12px/1 var(--sans);letter-spacing:.06em;color:#8f8f8b}
.service-grid h4{font:500 24px/1.08 var(--serif);margin:18px 0 13px;color:#f7f7f4}
.service-grid p{font-size:13px;line-height:1.72;color:#c9c9c5;max-width:42ch;margin:0}
.service-grid .start-cell{display:flex;flex-direction:column;justify-content:center;background:rgba(255,255,255,.025)}
.service-grid .start-cell h3{font:500 34px/1.02 var(--serif);margin:0 0 18px;color:#f7f7f4;max-width:11ch}
.service-grid .start-cell p{max-width:38ch}
.service-grid .start-cell .lightlink{align-self:flex-start;margin-top:22px}

.fashion-strip{height:205px;display:grid;grid-template-columns:1.05fr 1fr 1fr 1.05fr;overflow:hidden;background:#111}
.fashion-strip figure{margin:0;min-width:0;overflow:hidden;border-right:1px solid rgba(255,255,255,.18)}
.fashion-strip figure:last-child{border-right:0}
.fashion-strip img{width:100%;height:100%;object-fit:cover;display:block}
.fashion-strip .strip-rack-a img{object-position:center 40%}
.fashion-strip .strip-desk img{object-position:center 52%}
.fashion-strip .strip-hangers img{object-position:center 44%}
.fashion-strip .strip-rack-b img{object-position:74% 43%}

@media(max-width:900px){
  .service-grid{grid-template-columns:1fr 1fr}
  .service-grid article{min-height:0}
  .fashion-strip{height:145px;grid-template-columns:1fr 1fr}
  .fashion-strip figure:nth-child(n+3){display:none}
}
@media(max-width:560px){
  .service-grid{grid-template-columns:1fr}
  .fashion-strip{height:125px;grid-template-columns:1fr 1fr}
}

/* V7 — hero home más compacto: misma composición, menor altura de imagen */
@media (min-width:901px){
  .hero{
    min-height:500px;
  }
  .hero-img{
    min-height:500px;
    height:500px;
    align-self:start;
  }
  .hero-copy{
    padding-top:58px;
    padding-bottom:42px;
  }
}

/* V10 — encuadre individual de la viñeta editorial */
.fashion-strip .strip-rack-a img{object-position:center 62%}
.fashion-strip .strip-desk img{object-position:68% 62%}
.fashion-strip .strip-hangers img{object-position:48% 54%}
.fashion-strip .strip-rack-b img{object-position:26% 48%}
@media(max-width:900px){
 .fashion-strip .strip-rack-a img{object-position:center 62%}
 .fashion-strip .strip-desk img{object-position:70% 60%}
}

/* V11 — Hero: encuadre fotográfico corregido sin alterar estructura */
.hero-img{background:#f3f1ed;overflow:hidden}
.hero-img img{object-fit:cover;object-position:center 42%}
@media(max-width:900px){
  .hero-img img{object-position:center 38%}
}
/* v12: hero image supplied by Flor — preserve full composition */
.hero-img img{object-fit:cover;object-position:center center}
@media(max-width:900px){.hero-img img{object-position:center center}}

/* V14 — Hero: respetar la proporción completa de la fotografía elegida */
.hero-img{
  min-height:0;
  aspect-ratio:2 / 1;
  align-self:center;
  overflow:hidden;
  background:#f3f1ed;
}
.hero-img img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
}
@media(max-width:900px){
  .hero-img{
    height:auto;
    min-height:0;
    aspect-ratio:2 / 1;
  }
  .hero-img img{
    object-fit:contain;
    object-position:center center;
  }
}


/* V15 FINAL — únicamente los dos ajustes aprobados */
/* Hero: sin nota superpuesta a la derecha y sin altura/sombra sobrante. */
@media (min-width:901px){
  .hero{
    grid-template-columns:46% 54%;
    min-height:0;
    align-items:stretch;
  }
  .hero-note{display:none!important;}
  .hero-img{
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:1330 / 633;
    align-self:stretch;
    background:transparent;
  }
  .hero-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
  }
  .hero-copy{
    min-height:0;
  }
}
/* Qué es By Flor: sólo texto, sin imagen. */
.what{
  grid-template-columns:72% 28%;
  min-height:0;
}
.what-copy{
  padding-left:clamp(30px,7vw,108px);
  padding-right:clamp(35px,6vw,92px);
}
.what .two-col{columns:2;column-gap:42px;}
@media(max-width:900px){
  .hero-note{display:none!important;}
  .hero-img{background:transparent;}
  .what{grid-template-columns:1fr;}
  .what-copy{padding:40px 28px;}
  .what .two-col{columns:1;}
}

/* V16 — Inicio usa exactamente el header visual de las páginas internas */
.wrap{max-width:1180px;margin-inline:auto}
.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:saturate(120%) blur(6px);border-bottom:1px solid #e8e4dc}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:1.1rem}
.nav__mark{font-family:var(--serif);font-size:1.05rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink);white-space:nowrap;text-decoration:none}
.nav__links{display:flex;gap:2rem;list-style:none;margin:0;padding:0}
.nav__links a{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(18,18,18,.72);text-decoration:none}
.nav__links a:hover{color:var(--ink)}
.nav__cta{flex-shrink:0}
.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;padding:.85em 1.6em;border:1px solid var(--ink);border-radius:1px;transition:background-color .2s ease,color .2s ease;white-space:nowrap}
.btn--ghost{background:transparent;color:var(--ink);font-size:.72rem;padding:.7em 1.3em}
.btn--ghost:hover{background:var(--ink);color:var(--paper)}
@media(max-width:760px){.nav__links{display:none}.nav .wrap{padding-inline:22px}}

/* V19 — mejor jerarquía de servicios + navegación móvil */
.service-grid h4{font-size:clamp(28px,2.25vw,34px);line-height:1.02;margin:14px 0 16px;letter-spacing:-.015em}
.service-grid p{font-size:13px;line-height:1.62}
.mobile-menu-toggle{display:none;background:transparent;border:0;padding:8px;cursor:pointer;color:var(--ink)}
.mobile-menu-toggle span{display:block;width:24px;height:1px;background:currentColor;margin:5px 0}
.mobile-menu{display:none}
@media(max-width:760px){
 .nav__cta{display:none}
 .mobile-menu-toggle{display:block}
 .mobile-menu.is-open{display:flex;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #e8e4dc;padding:24px 22px 28px;flex-direction:column;gap:18px;box-shadow:0 10px 20px rgba(0,0,0,.04)}
 .mobile-menu a{font-size:12px;letter-spacing:.09em;text-transform:uppercase;text-decoration:none}
 .mobile-menu .mobile-contact{margin-top:4px;border-top:1px solid #ddd;padding-top:18px;font-weight:600}
 .service-grid h4{font-size:30px}
 .service-grid p{font-size:13px;line-height:1.65}
}
