/* ═══════════════════════════════════════════════════════════════
 * Rosy Models Agency — Corp 2050 Design System
 * Pill nav · Dual hero · Category tiles · Founder spotlight
 * ═══════════════════════════════════════════════════════════════ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;text-rendering:optimizeLegibility}
img,svg,video{display:block;max-width:100%}
button{font:inherit;cursor:pointer;background:none;border:none;color:inherit;padding:0}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}

:root{
  --white:#FFFFFF;
  --paper:#FDFBF9;
  --black:#0A0A0A;
  --ink:#1a1a1a;
  --gray-1:#F5F3F1;
  --gray-2:#E8E5E2;
  --gray-3:#999;
  --gray-4:#666;
  --gray-5:#333;
  --pink:#E8C4C8;
  --pink-light:#F5E0E3;
  --pink-soft:#FAF0F2;
  --pink-deep:#D9A3A9;
  --rose:#D9466C;        /* Accent pop for pill CTAs */
  --rose-dark:#B8324F;
  --font:'Inter',system-ui,-apple-system,sans-serif;
  --serif:'Playfair Display',Georgia,serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --max-w:1440px;
  --gut:clamp(1.25rem,3.5vw,3rem);
  --radius:24px;
  --radius-sm:16px;
  --radius-lg:32px;
  --ease-out:cubic-bezier(.22,.61,.36,1);
  --ease-out-expo:cubic-bezier(.16,1,.3,1);
}

html,body{background:var(--paper);color:var(--black);font-family:var(--font);font-size:15px;line-height:1.55}
::selection{background:var(--rose);color:var(--white)}

.mono{font-family:var(--mono);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.container{max-width:var(--max-w);margin:0 auto;padding:0 var(--gut);width:100%}

/* ═══ BOOT FADE ═══ */
html:not(.is-booted) body > *:not(.progress){opacity:0}
html.is-booted body > *{opacity:1;transition:opacity .8s ease}

/* ═══ PROGRESS BAR ═══ */
.progress{position:fixed;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--rose),var(--pink-deep));z-index:200;transform-origin:left center;transform:scaleX(0);transition:transform .12s linear;pointer-events:none;will-change:transform}

/* ═══ REVEAL ═══ */
.reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity 1s var(--ease-out-expo),transform 1s var(--ease-out-expo);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}
.reveal.is-in{opacity:1;transform:translate3d(0,0,0)}

/* Big titles get blur-in */
.hero-card__title.reveal,.chapter__title.reveal,.founder__name.reveal,.tagline__title.reveal{filter:blur(8px);transition:opacity 1.1s var(--ease-out-expo),transform 1.1s var(--ease-out-expo),filter 1.1s var(--ease-out-expo);transition-delay:var(--reveal-delay,0ms)}
.hero-card__title.is-in,.chapter__title.is-in,.founder__name.is-in,.tagline__title.is-in{filter:blur(0)}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none;filter:none}
  html:not(.is-booted) body > *:not(.progress){opacity:1}
}

/* ═══════════════════════════════════════════════════════════════
 * HEADER / TOPBAR — pill nav corp
 * ═══════════════════════════════════════════════════════════════ */
.topbar{position:fixed;top:0;left:0;right:0;z-index:120;padding:.75rem 0;transition:padding .3s var(--ease-out),transform .4s var(--ease-out-expo)}
.topbar.is-hidden{transform:translateY(-120%)}
.topbar__inner{max-width:1600px;margin:0 auto;padding:0 clamp(1rem,2.5vw,2rem);display:flex;align-items:center;gap:1rem;background:rgba(253,251,249,.8);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border:1px solid rgba(10,10,10,.06);border-radius:999px;height:3.5rem;transition:background .4s ease,border-color .4s ease,box-shadow .4s ease}
.topbar.is-scrolled .topbar__inner{background:rgba(253,251,249,.96);box-shadow:0 10px 40px -20px rgba(10,10,10,.15);border-color:rgba(10,10,10,.08)}

/* Logo */
.logo{display:flex;align-items:baseline;gap:.15rem;padding:0 .8rem;flex-shrink:0}
.logo__rosy{font-family:var(--serif);font-size:1.2rem;font-weight:900;color:var(--black);letter-spacing:.01em;line-height:1}
.logo__models{font-family:var(--serif);font-size:.95rem;font-weight:400;font-style:italic;color:var(--black);margin-left:.15rem;line-height:1}

/* Center nav (pill links) */
.topbar__nav{display:flex;align-items:center;gap:.15rem;flex:1;justify-content:center}
.topbar__link{font-size:.78rem;font-weight:500;color:var(--gray-4);padding:.5rem 1rem;border-radius:999px;transition:background .3s var(--ease-out),color .3s var(--ease-out);white-space:nowrap;letter-spacing:.005em}
.topbar__link:hover{color:var(--black);background:rgba(10,10,10,.04)}
.topbar__link.is-active{color:var(--white);background:var(--black)}

/* Right cluster */
.topbar__right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}

/* Language toggle */
.lang{display:inline-flex;align-items:center;gap:.3rem;padding:0 .7rem;font-family:var(--mono);font-size:.65rem;font-weight:500;letter-spacing:.12em}
.lang__btn{color:var(--gray-3);transition:color .25s ease;position:relative;padding:.2rem 0}
.lang__btn:hover{color:var(--gray-5)}
.lang__btn.is-active{color:var(--black)}
.lang__btn.is-active::after{content:'';position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--black)}
.lang__sep{color:var(--gray-2);margin:0 .1rem}

/* Login (text) + Apply (pill) */
.topbar__login{font-size:.78rem;font-weight:500;color:var(--black);padding:.5rem .9rem;border-radius:999px;transition:background .25s,color .25s}
.topbar__login:hover{background:rgba(10,10,10,.05)}
.topbar__cta{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.3rem;background:var(--rose);color:var(--white);font-size:.78rem;font-weight:500;border-radius:999px;transition:background .3s var(--ease-out),transform .3s var(--ease-out),box-shadow .3s var(--ease-out);white-space:nowrap;letter-spacing:.005em}
.topbar__cta:hover{background:var(--rose-dark);transform:translateY(-1px);box-shadow:0 10px 20px -10px rgba(217,70,108,.5)}

/* Hamburger (mobile only) */
.nav__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:10px;border-radius:999px;margin-left:.2rem;transition:background .25s}
.nav__toggle span{display:block;width:100%;height:1.5px;background:var(--black);transition:transform .25s,opacity .2s}
.nav__toggle:hover{background:rgba(10,10,10,.05)}
.nav__toggle.is-open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav__toggle.is-open span:nth-child(2){opacity:0}
.nav__toggle.is-open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

@media(max-width:1024px){
  .topbar__nav{display:none}
  .topbar__login{display:none}
  .lang{display:none}
  .nav__toggle{display:flex}
  /* Mobile header: logo on the left, hamburger on the right.
     Apply / Log in live in the overlay nav.
     margin-left:auto replaces the push that .topbar__nav's flex:1 gave
     on desktop — without it the hamburger collapses next to the logo. */
  .topbar__cta{display:none}
  .topbar__right{margin-left:auto;gap:.25rem}
  .topbar__inner{gap:.5rem;padding:0 1rem;height:3.25rem}
}

/* Mobile overlay nav */
.nav-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:var(--paper);z-index:94;transform:translateX(100%);transition:transform .4s var(--ease-out-expo)}
.nav{display:none;position:fixed;top:0;left:0;right:0;bottom:0;flex-direction:column;align-items:center;justify-content:center;gap:1.75rem;transform:translateX(100%);transition:transform .45s var(--ease-out-expo);z-index:95;padding:4rem var(--gut)}
.nav.is-open,.nav-overlay.is-open{transform:translateX(0)}

@media(max-width:1024px){
  .nav-overlay{display:block}
  .nav{display:flex}
}

.nav__link{font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--black);letter-spacing:-.005em;transition:color .25s}
.nav__link:hover{color:var(--rose)}
.nav__link--accent{font-size:.85rem;font-family:var(--font);font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--gray-4);padding:.6rem 2rem;border:1px solid var(--gray-2);border-radius:999px;transition:all .3s}
.nav__link--accent:hover{color:var(--black);border-color:var(--black)}
.nav__link--cta{font-size:.85rem;font-family:var(--font);font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--white);background:var(--rose);padding:.7rem 2.2rem;border-radius:999px;transition:all .3s}
.nav__link--cta:hover{background:var(--rose-dark);color:var(--white)}
.nav__lang{display:flex;align-items:center;gap:.3rem;margin-top:1rem;font-family:var(--mono);font-size:.75rem;letter-spacing:.15em}

/* ═══════════════════════════════════════════════════════════════
 * PILL BUTTONS — core system
 * ═══════════════════════════════════════════════════════════════ */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.8rem;font-size:.82rem;font-weight:500;letter-spacing:.005em;line-height:1;border-radius:999px;transition:background .35s var(--ease-out),color .35s var(--ease-out),border-color .35s var(--ease-out),transform .35s var(--ease-out),box-shadow .35s var(--ease-out);white-space:nowrap;border:1.5px solid transparent;cursor:pointer;text-align:center}
.pill--rose{background:var(--rose);color:var(--white);border-color:var(--rose)}
.pill--rose:hover{background:var(--rose-dark);border-color:var(--rose-dark);transform:translateY(-2px);box-shadow:0 16px 32px -14px rgba(217,70,108,.5)}
.pill--ghost{background:transparent;color:var(--black);border-color:rgba(10,10,10,.2)}
.pill--ghost:hover{border-color:var(--black);background:var(--black);color:var(--white);transform:translateY(-2px)}
.pill--ghost-on-dark{color:var(--white);border-color:rgba(255,255,255,.3)}
.pill--ghost-on-dark:hover{background:var(--white);color:var(--black);border-color:var(--white)}

/* Legacy .btn alias (kept for backward compat) */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.8rem;font-size:.82rem;font-weight:500;border-radius:999px;transition:all .35s var(--ease-out);white-space:nowrap;border:1.5px solid transparent;cursor:pointer}
.btn--primary{background:var(--rose);color:var(--white);border-color:var(--rose)}
.btn--primary:hover{background:var(--rose-dark);border-color:var(--rose-dark);transform:translateY(-2px);box-shadow:0 16px 32px -14px rgba(217,70,108,.5)}
.btn--ghost{background:transparent;color:var(--black);border-color:rgba(10,10,10,.2)}
.btn--ghost:hover{background:var(--black);color:var(--white);border-color:var(--black);transform:translateY(-2px)}
.btn--on-dark.btn--ghost{color:var(--white);border-color:rgba(255,255,255,.3)}
.btn--on-dark.btn--ghost:hover{background:var(--white);color:var(--black);border-color:var(--white)}

/* ═══════════════════════════════════════════════════════════════
 * DUAL HERO — modelmanagement style, Rosy refined
 * ═══════════════════════════════════════════════════════════════ */
.hero{padding:calc(5rem + .75rem) 0 0;background:var(--paper)}
.hero__container{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.5rem,1vw,1rem);padding-top:0}
.hero-card{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius-lg);isolation:isolate;cursor:default}
.hero-card img{position:absolute;inset:0;width:100%;height:110%;object-fit:cover;transition:transform 1.2s var(--ease-out-expo),filter .5s ease;will-change:transform}
.hero-card:hover img{transform:scale(1.04);filter:brightness(.9)}
.hero-card__overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(1.5rem,3vw,2.5rem);background:linear-gradient(transparent 40%,rgba(10,10,10,.65));color:var(--white);z-index:2}
.hero-card__meta{color:rgba(255,255,255,.7);margin-bottom:1rem}
.hero-card__title{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,5vw,4rem);line-height:1;letter-spacing:-.015em;margin-bottom:.8rem}
.hero-card__sub{font-size:.92rem;line-height:1.55;color:rgba(255,255,255,.85);max-width:30rem;margin-bottom:1.5rem;font-weight:400}
.hero-card .pill{align-self:flex-start}

@media(max-width:900px){
  .hero__container{grid-template-columns:1fr;gap:.5rem}
  .hero-card{aspect-ratio:4/5;max-height:75vh}
}

/* ═══════════════════════════════════════════════════════════════
 * TAGLINE — "Más que una agencia"
 * ═══════════════════════════════════════════════════════════════ */
.tagline{text-align:center;padding:clamp(4rem,8vw,8rem) var(--gut)}
.tagline__kicker{display:inline-block;color:var(--gray-3);margin-bottom:1.5rem}
.tagline__title{font-family:var(--serif);font-size:clamp(2.2rem,5vw,4.2rem);font-weight:400;letter-spacing:-.015em;line-height:1.05;color:var(--black);margin-bottom:1.5rem}
.tagline__title em{font-style:italic;font-weight:400;color:var(--rose)}
.tagline__body{font-size:1rem;color:var(--gray-4);max-width:44rem;margin:0 auto;line-height:1.7}

/* ═══════════════════════════════════════════════════════════════
 * CATEGORY TILES
 * ═══════════════════════════════════════════════════════════════ */
.tiles{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(.5rem,1vw,.75rem);padding-bottom:clamp(4rem,8vw,8rem)}
.tile{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius);isolation:isolate;transition:transform .5s var(--ease-out-expo)}
.tile:hover{transform:translateY(-4px)}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-out-expo),filter .4s ease}
.tile:hover img{transform:scale(1.08);filter:brightness(.85)}
.tile__overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:1rem;background:linear-gradient(transparent 40%,rgba(10,10,10,.7));color:var(--white);z-index:2}
.tile__title{font-family:var(--serif);font-size:clamp(.95rem,1.4vw,1.25rem);font-weight:400;line-height:1.1;letter-spacing:-.005em;margin-bottom:.4rem}
.tile__link{font-size:.7rem;font-weight:500;letter-spacing:.05em;color:rgba(255,255,255,.75);transition:color .3s}
.tile:hover .tile__link{color:var(--pink)}

@media(max-width:1100px){.tiles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.tiles{grid-template-columns:repeat(2,1fr)}.tile__title{font-size:1rem}}

/* ═══════════════════════════════════════════════════════════════
 * CHAPTERS — consistent framing for every section
 * ═══════════════════════════════════════════════════════════════ */
.chapter{position:relative;background:var(--paper)}
.chapter--padded{padding:clamp(4rem,7vw,7rem) 0}
.chapter--bleed{padding:clamp(2rem,4vw,4rem) 0}
.chapter--rose{background:var(--pink-soft)}
.chapter--dark{background:var(--black);color:var(--paper)}
.chapter--dark .mono{color:var(--pink-deep)}
.chapter--dark .chapter__label{color:var(--paper)}
.chapter--dark .chapter__num{color:var(--pink-deep)}

.chapter__head{display:flex;align-items:center;gap:1rem;margin-bottom:clamp(2rem,4vw,4rem);padding-bottom:1rem;border-bottom:1px solid rgba(10,10,10,.1)}
.chapter--dark .chapter__head{border-bottom-color:rgba(255,255,255,.1)}
.chapter__num{color:var(--rose);font-weight:500}
.chapter__label{font-family:var(--serif);font-size:.95rem;font-style:italic;color:var(--black);font-weight:400}

.chapter__body{max-width:42rem;margin-bottom:clamp(2rem,4vw,4rem)}
.chapter__title{font-family:var(--serif);font-size:clamp(2rem,4.5vw,3.6rem);font-weight:400;line-height:1.05;letter-spacing:-.015em;color:inherit;margin-bottom:1.25rem}
.chapter__title em{font-style:italic;color:var(--rose);font-weight:400}
.chapter--dark .chapter__title em{color:var(--pink-deep)}
.chapter__intro{font-size:1rem;color:var(--gray-4);line-height:1.7;max-width:36rem}
.chapter--dark .chapter__intro{color:rgba(253,251,249,.7)}
.chapter--dark .chapter__intro em{color:var(--pink-deep);font-style:normal;border-bottom:1px solid currentColor;padding-bottom:1px}

/* ═══════════════════════════════════════════════════════════════
 * FILMSTRIP
 * ═══════════════════════════════════════════════════════════════ */
.filmstrip{position:relative;overflow:hidden;background:var(--paper);padding:0;margin-top:2rem}
.filmstrip::before,.filmstrip::after{content:'';position:absolute;top:0;bottom:0;width:10vw;max-width:180px;z-index:3;pointer-events:none}
.filmstrip::before{left:0;background:linear-gradient(90deg,var(--paper),transparent)}
.filmstrip::after{right:0;background:linear-gradient(270deg,var(--paper),transparent)}
.filmstrip__track{display:flex;gap:.25rem;animation:filmscroll 55s linear infinite;width:max-content}
.filmstrip__track:hover{animation-play-state:paused}
.filmstrip__item{position:relative;flex-shrink:0;height:70vh;max-height:720px;overflow:hidden;border-radius:var(--radius-sm)}
.filmstrip__item img{height:100%;width:auto;object-fit:cover;transition:transform 1.2s var(--ease-out-expo),filter .5s ease;will-change:transform}
.filmstrip__item:hover img{transform:scale(1.06);filter:brightness(.78) contrast(1.05)}
.filmstrip__info{position:absolute;bottom:0;left:0;right:0;padding:1.25rem;background:linear-gradient(transparent,rgba(0,0,0,.65));transform:translateY(100%);transition:transform .5s var(--ease-out-expo);display:flex;justify-content:flex-end}
.filmstrip__item:hover .filmstrip__info{transform:translateY(0)}
.filmstrip__name{font-size:.65rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--white)}
@keyframes filmscroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

@media(max-width:768px){.filmstrip__item{height:55vh}}

/* ═══════════════════════════════════════════════════════════════
 * FOUNDER — Julia spotlight
 * ═══════════════════════════════════════════════════════════════ */
.founder{display:grid;grid-template-columns:5fr 7fr;gap:clamp(2rem,5vw,6rem);align-items:start}
.founder__portrait{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius);background:var(--gray-1)}
.founder__portrait img{position:absolute;inset:0;width:100%;height:110%;object-fit:cover;will-change:transform}
.founder__caption{position:absolute;bottom:1rem;left:1rem;color:var(--white);background:rgba(10,10,10,.5);backdrop-filter:blur(10px);padding:.5rem .8rem;border-radius:999px;z-index:2}
.founder__content{padding-top:.5rem}
.founder__kicker{display:inline-block;color:var(--rose);margin-bottom:1rem}
.founder__name{font-family:var(--serif);font-size:clamp(3rem,6vw,5.5rem);font-weight:400;line-height:.9;letter-spacing:-.02em;color:var(--black);margin-bottom:2rem}
.founder__name em{font-style:italic;color:var(--rose);font-weight:400}
.founder__quote{font-family:var(--serif);font-size:clamp(1.25rem,2vw,1.65rem);font-style:italic;font-weight:400;line-height:1.45;color:var(--black);margin:0 0 2rem;padding-left:1.5rem;border-left:2px solid var(--rose);max-width:32rem}
.founder__body{font-size:.95rem;line-height:1.8;color:var(--gray-4);max-width:34rem;margin-bottom:2rem}
.founder__body p + p{margin-top:1rem}
.founder__body em{font-style:italic;font-weight:400;color:var(--black)}
.founder__stats{display:grid;grid-template-columns:repeat(2,auto);gap:1.2rem 2.5rem;margin-bottom:2rem;padding:1.5rem 0;border-top:1px solid rgba(10,10,10,.1);border-bottom:1px solid rgba(10,10,10,.1);max-width:32rem}
.founder__stats > div{display:flex;flex-direction:column;gap:.3rem}
.founder__stats dt{color:var(--gray-3)}
.founder__stats dd{font-family:var(--serif);font-size:.95rem;color:var(--black);font-weight:400}
.founder__stats a{border-bottom:1px solid transparent;transition:border-color .25s}
.founder__stats a:hover{border-bottom-color:var(--black)}
.founder__sign{font-family:var(--serif);font-style:italic;font-size:2rem;font-weight:400;color:var(--rose);letter-spacing:-.01em}

@media(max-width:900px){
  .founder{grid-template-columns:1fr;gap:2.5rem}
  .founder__portrait{max-width:80%;aspect-ratio:3/4}
}

/* ═══════════════════════════════════════════════════════════════
 * SERVICES GRID
 * ═══════════════════════════════════════════════════════════════ */
.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;background:rgba(10,10,10,.08)}
.service{background:var(--paper);padding:clamp(2rem,3.5vw,3rem) clamp(1.5rem,2.5vw,2.25rem);display:flex;flex-direction:column;gap:.75rem;border-radius:var(--radius-sm);transition:background .4s var(--ease-out),transform .4s var(--ease-out);position:relative;overflow:hidden}
.service:hover{background:var(--pink-soft);transform:translateY(-2px)}
.service__head{display:flex;align-items:center;justify-content:space-between;color:var(--rose)}
.service__title{font-family:var(--serif);font-size:1.5rem;font-weight:400;color:var(--black);letter-spacing:-.005em;line-height:1.1}
.service__text{font-size:.88rem;color:var(--gray-4);line-height:1.7}

@media(max-width:900px){.services__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.services__grid{grid-template-columns:1fr;gap:.25rem}}

/* ═══════════════════════════════════════════════════════════════
 * PLATFORM SPLIT
 * ═══════════════════════════════════════════════════════════════ */
.split__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.split__card{background:var(--paper);color:var(--black);padding:clamp(2rem,4vw,3rem);display:flex;flex-direction:column;gap:1.25rem;border-radius:var(--radius);transition:transform .5s var(--ease-out-expo),box-shadow .5s var(--ease-out-expo);position:relative;overflow:hidden}
.split__card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -25px rgba(10,10,10,.18)}
.split__card--accent{background:var(--pink-soft)}
.chapter--dark .split__card{background:rgba(255,255,255,.03);color:var(--paper);border:1px solid rgba(255,255,255,.08)}
.chapter--dark .split__card--accent{background:var(--paper);color:var(--black);border-color:var(--paper)}
.split__kicker{color:var(--rose)}
.split__title{font-family:var(--serif);font-size:clamp(1.4rem,2.3vw,1.8rem);font-weight:400;line-height:1.15;letter-spacing:-.01em;color:inherit}
.split__title em{font-style:italic;color:var(--rose);font-weight:400}
.split__list{display:flex;flex-direction:column;gap:.6rem;margin:.4rem 0}
.split__list li{font-size:.92rem;color:inherit;opacity:.82;line-height:1.65;padding-left:1.3rem;position:relative}
.split__list li::before{content:'';position:absolute;left:0;top:.7em;width:.55rem;height:1px;background:var(--rose)}
.split__actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:auto;padding-top:.5rem}

@media(max-width:900px){.split__grid{grid-template-columns:1fr}.split__actions{flex-direction:column}.split__actions .pill{width:100%}}

/* ═══════════════════════════════════════════════════════════════
 * MARQUEE
 * ═══════════════════════════════════════════════════════════════ */
.marquee{overflow:hidden;background:var(--black);color:var(--paper);padding:1.3rem 0;border-top:1px solid var(--black);border-bottom:1px solid var(--black)}
.marquee__track{display:flex;gap:1.8rem;white-space:nowrap;animation:marquee 40s linear infinite;width:max-content;align-items:center;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;font-weight:500}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee__track span{flex-shrink:0}
.marquee__em{font-family:var(--serif);font-style:italic;font-size:.95rem;font-weight:400;letter-spacing:.03em;text-transform:none;color:var(--rose)}
.marquee__dot{color:var(--rose);opacity:.7;font-size:.5rem}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ═══════════════════════════════════════════════════════════════
 * FAQ
 * ═══════════════════════════════════════════════════════════════ */
.faq{display:flex;flex-direction:column;border-top:1px solid rgba(10,10,10,.1)}
.faq__item{border-bottom:1px solid rgba(10,10,10,.1);transition:background .4s var(--ease-out)}
.faq__item[open]{background:var(--pink-soft)}
.faq__item summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:clamp(1.1rem,2vw,1.6rem) clamp(1rem,2vw,1.5rem);cursor:pointer;font-family:var(--serif);font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:400;color:var(--black);letter-spacing:-.005em;line-height:1.35;transition:color .3s var(--ease-out)}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary:hover{color:var(--rose)}
.faq__icon{flex-shrink:0;position:relative;width:1.1rem;height:1.1rem;transition:transform .4s var(--ease-out)}
.faq__icon::before,.faq__icon::after{content:'';position:absolute;top:50%;left:0;right:0;height:1.5px;background:currentColor;transition:transform .4s var(--ease-out)}
.faq__icon::after{transform:rotate(90deg)}
.faq__item[open] .faq__icon{transform:rotate(180deg)}
.faq__item[open] .faq__icon::after{transform:rotate(0)}
.faq__a{padding:0 clamp(1rem,2vw,1.5rem) clamp(1.4rem,2.5vw,2rem);max-width:52rem}
.faq__a p{font-size:.95rem;line-height:1.75;color:var(--gray-5)}
.faq__a em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--black)}
.faq__a a{color:var(--black);border-bottom:1px solid var(--rose);padding-bottom:1px;transition:color .25s,border-color .25s}
.faq__a a:hover{color:var(--rose)}

/* ═══════════════════════════════════════════════════════════════
 * CONTACTO
 * ═══════════════════════════════════════════════════════════════ */
.contact{text-align:left;max-width:58rem}
.contact__title{margin-bottom:2.5rem}
.contact__title em{font-style:italic;color:var(--rose)}
.contact__email{display:inline-block;font-family:var(--serif);font-size:clamp(1.3rem,2.4vw,2rem);font-weight:400;color:var(--black);border-bottom:1px solid rgba(10,10,10,.15);padding-bottom:.3rem;margin-bottom:.8rem;transition:border-color .3s,color .3s}
.contact__email:hover{border-bottom-color:var(--rose);color:var(--rose)}
.contact__ig{display:block;font-size:.85rem;color:var(--gray-4);margin-bottom:2.5rem;transition:color .25s}
.contact__ig:hover{color:var(--rose)}
.contact__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem 2.5rem;padding:2rem 0;border-top:1px solid rgba(10,10,10,.1);border-bottom:1px solid rgba(10,10,10,.1);max-width:42rem;margin-bottom:2.5rem}
.contact__row{display:flex;flex-direction:column;gap:.3rem}
.contact__row dt{color:var(--gray-3)}
.contact__row dd{font-family:var(--serif);font-size:1rem;color:var(--black);font-weight:400}
.contact__row dd a{border-bottom:1px solid transparent;transition:border-color .25s}
.contact__row dd a:hover{border-bottom-color:var(--black)}
.contact__actions{display:flex;flex-wrap:wrap;gap:.8rem}

@media(max-width:600px){
  .contact__grid{grid-template-columns:1fr}
  .contact__actions{flex-direction:column}
  .contact__actions .pill{width:100%}
}

/* ═══════════════════════════════════════════════════════════════
 * FOOTER
 * ═══════════════════════════════════════════════════════════════ */
.footer{background:var(--black);color:var(--paper);padding:clamp(3rem,5vw,5rem) 0 2rem}
.footer__inner{display:flex;flex-direction:column;gap:3rem}
.footer__brand{font-family:var(--serif);font-size:2rem}
.footer__brand .logo__rosy{font-size:2rem;color:var(--paper)}
.footer__brand .logo__models{font-size:1.4rem;color:var(--paper)}
.footer__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.1)}
.footer__col{display:flex;flex-direction:column;gap:.65rem}
.footer__colTitle{color:var(--pink-deep);margin-bottom:.4rem}
.footer__col a,.footer__col span{font-size:.88rem;color:rgba(253,251,249,.75);transition:color .25s}
.footer__col a:hover{color:var(--rose)}
.footer__bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.footer__meta a{color:rgba(253,251,249,.55);transition:color .25s}
.footer__meta a:hover{color:var(--rose)}
.footer__copy,.footer__meta{color:rgba(253,251,249,.5);font-size:.6rem}

@media(max-width:600px){
  .footer__cols{grid-template-columns:1fr;gap:1.5rem}
  .footer__bottom{flex-direction:column;align-items:flex-start}
}
