/* Tipografías alojadas en la propia web (antes Google Fonts): latin + latin-ext */
/* latin-ext */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/urbanist-normal-latin-ext-a4cc1d.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/urbanist-normal-latin-b16838.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/urbanist-normal-latin-ext-a4cc1d.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/urbanist-normal-latin-b16838.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/barlow-condensed-normal-latin-ext-5e89dd.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/barlow-condensed-normal-latin-10c69b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/barlow-condensed-normal-latin-ext-678e73.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/barlow-condensed-normal-latin-28c6fc.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/bodoni-moda-normal-latin-ext-ff3144.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/bodoni-moda-normal-latin-0500f0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/bodoni-moda-normal-latin-ext-ff3144.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/bodoni-moda-normal-latin-0500f0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/dm-sans-normal-latin-ext-a18ee4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/dm-sans-normal-latin-fc88c2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/dm-sans-normal-latin-ext-a18ee4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/dm-sans-normal-latin-fc88c2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/dm-sans-normal-latin-ext-a18ee4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/dm-sans-normal-latin-fc88c2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Gloock';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/gloock-normal-latin-ext-7048e7.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Gloock';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/gloock-normal-latin-dcbd8c.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-normal-latin-ext-c95efb.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-normal-latin-757962.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-normal-latin-ext-c95efb.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-normal-latin-757962.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/inter-tight-italic-latin-ext-026f60.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/inter-tight-italic-latin-62b5b7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/inter-tight-italic-latin-ext-026f60.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter Tight';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/inter-tight-italic-latin-62b5b7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/inter-tight-normal-latin-ext-17cab1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/inter-tight-normal-latin-a807ee.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/inter-tight-normal-latin-ext-17cab1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/inter-tight-normal-latin-a807ee.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/inter-tight-normal-latin-ext-17cab1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/inter-tight-normal-latin-a807ee.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/montserrat-italic-latin-ext-40bf33.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/montserrat-italic-latin-fb5e2b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/montserrat-italic-latin-ext-40bf33.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/montserrat-italic-latin-fb5e2b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/montserrat-normal-latin-ext-a93986.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/montserrat-normal-latin-83a31c.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/montserrat-normal-latin-ext-a93986.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/montserrat-normal-latin-83a31c.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/montserrat-normal-latin-ext-a93986.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/montserrat-normal-latin-83a31c.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Nothing You Could Do';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/nothing-you-could-do-normal-latin-d3090c.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Pinyon Script';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/pinyon-script-normal-latin-ext-b5f236.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Pinyon Script';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/pinyon-script-normal-latin-e7e60f.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/playfair-display-italic-latin-ext-a0a176.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/playfair-display-italic-latin-668fda.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/playfair-display-normal-latin-ext-456398.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/playfair-display-normal-latin-99b90e.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-ext-d025d4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-cd0028.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-ext-d025d4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-cd0028.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-ext-d025d4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-cd0028.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-ext-d025d4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-cd0028.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-ext-d025d4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/public-sans-normal-latin-cd0028.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden}
@supports (overflow:clip){html,body{overflow-x:clip}}
body{font-family:'Public Sans',system-ui,sans-serif;color:#1a1a1a;background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:1366px;margin:0 auto}

/* ---------- reveal ---------- */
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}

/* ---------- HOME · hero ---------- */
.hero{position:relative;height:min(56.25vw,100vh);min-height:520px;background:#d9391b url(video/hero-poster.jpg) center/cover no-repeat;color:#fff;overflow:hidden}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}
/* Los videos son de ambiente: nunca se muestran los controles del sistema (iPhone los pone encima si bloquea el arranque) */
video{pointer-events:none}
video::-webkit-media-controls,video::-webkit-media-controls-panel,video::-webkit-media-controls-start-playback-button,video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none;opacity:0}
.hero-title,.hero-links{z-index:1}
.hero .logo{position:absolute;top:3.6vw;left:3.6vw;width:clamp(70px,9.5vw,130px)}
.nav{position:absolute;top:3.4vw;right:3.4vw;text-align:right;list-style:none;font-family:'DM Sans',sans-serif;font-weight:300;font-size:clamp(12px,1.35vw,18px);line-height:1.05;letter-spacing:.02em;z-index:5}
.nav a{text-decoration:none;display:inline-block;transition:opacity .2s}
.nav a:hover{opacity:.6}
.hero-title{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);text-align:center;width:max-content}
.hero-title h1{font-family:'Urbanist',sans-serif;font-weight:300;font-size:clamp(30px,3.9vw,74px);line-height:1.08;letter-spacing:-.005em;white-space:nowrap}
.hero-title .sub{margin:clamp(8px,1.1vw,18px) auto 0;font-family:'Urbanist',sans-serif;font-weight:400;font-size:clamp(9px,.8vw,13px);letter-spacing:.22em}
.hero-links{position:absolute;left:50%;bottom:12.5%;transform:translateX(-50%);display:flex;gap:clamp(40px,10vw,150px);font-family:'DM Sans',sans-serif;font-size:clamp(11px,1.2vw,16px)}
.hero-links a{text-underline-offset:3px}

/* ---------- encabezado fijo (transparente → blanco al bajar) ---------- */
:root{--head-h:clamp(64px,6.4vw,84px)}
[id]{scroll-margin-top:calc(var(--head-h) + 8px)}
.site-head{position:fixed;inset:0 0 auto 0;z-index:100;height:var(--head-h);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,3.6vw,48px);color:#fff;background:rgba(255,255,255,0);transition:background-color .45s ease,color .45s ease,box-shadow .45s ease}
.site-head.scrolled{background:#fff;color:#111;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.site-logo img{display:block;width:clamp(78px,8.4vw,118px);transition:filter .45s ease}
.site-head.scrolled .site-logo img{filter:invert(1)}
.site-actions{display:flex;align-items:center;gap:clamp(14px,2vw,26px)}
.head-pill{border:1px solid currentColor;border-radius:40px;padding:10px 20px;font:400 12px/1 'DM Sans',sans-serif;letter-spacing:.1em;text-decoration:none;transition:background-color .25s,color .25s}
.site-head:not(.scrolled) .head-pill:hover{background:#fff;color:#111}
.site-head.scrolled .head-pill:hover{background:#111;color:#fff}
.burger{position:relative;width:32px;height:22px;background:none;border:0;padding:0;cursor:pointer;color:inherit}
.burger span{position:absolute;left:0;right:0;height:1.5px;background:currentColor;border-radius:2px;transition:transform .35s ease,opacity .25s ease,top .35s ease}
.burger span:nth-child(1){top:1px}.burger span:nth-child(2){top:10px}.burger span:nth-child(3){top:19px}
.menu-open .burger span:nth-child(1){top:10px;transform:rotate(45deg)}
.menu-open .burger span:nth-child(2){opacity:0}
.menu-open .burger span:nth-child(3){top:10px;transform:rotate(-45deg)}
/* selector de idioma EN / ES */
.lang-switch{display:flex;align-items:center;gap:6px;font:400 12px/1 'DM Sans',sans-serif;letter-spacing:.1em}
.lang-switch button{background:none;border:0;padding:6px 2px;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;opacity:.45;transition:opacity .25s}
.lang-switch button:hover{opacity:.8}
.lang-switch button[aria-pressed="true"]{opacity:1}
.lang-switch span{opacity:.35}
/* páginas sin foto de portada: encabezado blanco desde el inicio */
body.head-solid{padding-top:var(--head-h)}
html:not(.menu-open) .head-solid .site-head{background:#fff;color:#111;box-shadow:0 1px 0 rgba(0,0,0,.08)}
html:not(.menu-open) .head-solid .site-logo img{filter:invert(1)}
.head-solid .site-head .head-pill:hover{background:#111;color:#fff}
/* evita ver el inglés un instante cuando la persona eligió español */
.head-solid .mih{margin-top:calc(-1 * var(--head-h))}
.i18n-wait body{opacity:0}
body{transition:opacity .2s}
/* con el menú abierto el encabezado vuelve a blanco sobre negro */
.menu-open .site-head{background:transparent;color:#fff;box-shadow:none}
.menu-open .site-head .site-logo img{filter:none}
.menu-open .head-pill{visibility:hidden}
.site-menu{position:fixed;inset:0;z-index:90;background:#000;color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:32px;overflow-y:auto;padding:calc(var(--head-h) + clamp(24px,5vw,60px)) clamp(16px,3.6vw,48px) clamp(24px,3vw,40px);opacity:0;transition:opacity .35s ease}
.site-menu[hidden]{display:none}
.site-menu{pointer-events:none}
.site-menu.open{pointer-events:auto}
.site-menu.open{opacity:1}
.site-menu ul{list-style:none}
.site-menu li a{display:inline-block;font-family:'Playfair Display',serif;font-size:clamp(36px,min(5.6vw,8.5svh),84px);line-height:1.1;text-decoration:none;transform:translateY(18px);opacity:0;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .5s ease,color .2s}
.site-menu.open li a{transform:none;opacity:1}
.site-menu.open li:nth-child(2) a{transition-delay:.04s}.site-menu.open li:nth-child(3) a{transition-delay:.08s}.site-menu.open li:nth-child(4) a{transition-delay:.12s}.site-menu.open li:nth-child(5) a{transition-delay:.16s}.site-menu.open li:nth-child(6) a{transition-delay:.2s}.site-menu.open li:nth-child(7) a{transition-delay:.24s}
.site-menu li a:hover{color:#f0502a}
.menu-foot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font:400 12px/1.4 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.menu-foot a{text-decoration:none}
body.menu-lock{overflow:hidden}
@media (prefers-reduced-motion:reduce){.site-head,.site-menu,.site-menu li a{transition:none}}

/* ---------- intro + logos ---------- */
.intro{text-align:center;padding:clamp(40px,7vw,80px) 20px clamp(24px,3vw,40px)}
.intro p{max-width:640px;margin:0 auto;font-size:clamp(12px,1.25vw,15px);line-height:1.35}
.intro h6{font-size:9px;font-weight:500;letter-spacing:.04em;margin-top:clamp(36px,5vw,56px)}
.logos{display:flex;justify-content:space-between;align-items:center;padding:clamp(24px,3.5vw,44px) 4.3vw clamp(28px,3vw,40px);gap:24px}
.logos img{height:clamp(34px,6.6vw,90px);width:auto;object-fit:contain;filter:grayscale(1);transition:filter .3s}
.logos img:hover{filter:none}
.logos .sm{height:clamp(24px,5vw,70px)}
/* logos recortados al ras: más bajos para que se vean del mismo tamaño que los demás */
.logos .lg-rooster{height:clamp(19px,3.7vw,50px)}
.logos .lg-smirnoff{height:clamp(15px,2.9vw,40px)}
.logos .lg-joseph{height:clamp(15px,3vw,42px)}
/* cinta de logos en movimiento */
.logos.marquee{display:block;padding-left:0;padding-right:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;width:max-content;animation:marquee 50s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-group{display:flex;align-items:center;flex-shrink:0;gap:clamp(56px,8vw,120px);padding-right:clamp(56px,8vw,120px)}
.marquee-group img{flex-shrink:0}
@keyframes marquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none;width:auto;flex-wrap:wrap;justify-content:center}.marquee-group[aria-hidden],.marquee-group img[alt=""]{display:none}.marquee-group{flex-wrap:wrap;justify-content:center;padding-right:0}}

/* ---------- intro nuevo ---------- */
.intro .lead{max-width:800px;font-size:clamp(17px,2.4vw,30px);line-height:1.22;color:#111}
.intro:has(.lead){padding:clamp(56px,11vw,150px) 20px}
.intro.trusted{padding-top:clamp(40px,6vw,80px)}
.reveal-words .rw{transition:color .18s linear}
.intro.trusted + .logos{margin-bottom:clamp(20px,3vw,48px)}

.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- split: Casa Vista Azul ---------- */
.split{display:grid;grid-template-columns:1fr 1fr}
.split .media{min-height:clamp(320px,48vw,700px);background:center/cover no-repeat}
.split .copy{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(24px,3.5vw,48px) clamp(24px,5vw,72px) clamp(24px,2.5vw,36px) clamp(24px,4.8vw,50px);color:#4a2e25}
.split .copy .t{font-size:clamp(12px,1.25vw,15px);text-underline-offset:3px}
.split .copy p{font-size:clamp(13px,1.4vw,17px);line-height:1.3;max-width:360px}
.pill{display:inline-block;width:min(100%,235px);text-align:center;border:1px solid #6d5b54;border-radius:30px;padding:10px 0;font-size:11px;text-decoration:none;letter-spacing:.02em;transition:background .25s,color .25s}
.pill:hover{background:#4a2e25;color:#fff}
.copy .bottom{display:flex;flex-direction:column;gap:clamp(40px,8vw,110px)}

.split.navy .copy{background:#1c2031;color:#ececf1}
.split.navy .pill{border-color:rgba(255,255,255,.75)}
.split.navy .pill:hover{background:#fff;color:#1c2031}

/* ---------- full image with caption ---------- */
.band{position:relative;height:clamp(300px,56vw,760px);background:center 55%/cover no-repeat}
.band figcaption{position:absolute;left:5.6vw;bottom:10%;color:#fff;font-family:'Bodoni Moda',serif;font-size:clamp(11px,1.25vw,16px);transform:scaleX(.9);transform-origin:left}

/* ---------- orange split ---------- */
.orange{display:grid;grid-template-columns:1fr 1fr;background:#cc4200;color:#fff}
.orange .copy{display:flex;flex-direction:column;justify-content:flex-end;gap:clamp(60px,10vw,120px);padding:40px 4vw clamp(40px,6vw,72px)}
.orange p{font-size:clamp(12px,1.25vw,15px);line-height:1.35;max-width:390px}
.orange a{font-size:12px;text-decoration:none}
.orange a:hover{text-decoration:underline}
.orange .media{min-height:clamp(320px,56vw,760px);background:center/cover no-repeat}
.media-video{position:relative;overflow:hidden}
.media-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}

/* ---------- work ---------- */
.work{padding:clamp(40px,6vw,60px) 0 clamp(50px,8vw,90px)}
.h-xl{font-family:'DM Sans',sans-serif;font-weight:400;font-size:clamp(38px,5.8vw,78px);line-height:1;letter-spacing:-.01em}
.work .h-xl{padding-left:7.4vw;margin-bottom:6px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2.4vw,30px);padding:0 8.5vw}
.card{text-decoration:none}
.card .ph{aspect-ratio:274/343;overflow:hidden;background:#e6e1d8}
.card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.card:hover img{transform:scale(1.05)}
.card b{display:block;font-size:9px;font-weight:600;margin-top:10px}
.card span{display:block;font-size:10px;line-height:1.35;max-width:230px;margin-top:2px}

/* ---------- name strip + personal brand ---------- */
.strip{background:#f5f5f5;display:flex;justify-content:space-between;align-items:center;padding:clamp(40px,6vw,64px) 3.6vw;gap:24px}
.strip a{font-size:10px;text-underline-offset:3px}
.strip p{max-width:370px;color:#4a2e25;font-size:clamp(12px,1.25vw,15px);line-height:1.3}
.pb-img{width:100%;aspect-ratio:1638/779;object-fit:cover}

/* ---------- services ---------- */
.services{background:#f7f7f7;padding:clamp(40px,6vw,64px) 3.6vw 0}
.services .h-xl{margin-bottom:clamp(24px,3.5vw,40px)}
.svc{list-style:none;max-width:625px}
.svc>li{border-bottom:1px solid #6b6b6b}
.svc>li:last-child{border-bottom:0}
/* desplegable de servicios */
.svc-head{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;background:none;border:0;border-radius:0;margin:0;padding:clamp(14px,2vw,22px) 0 clamp(12px,1.5vw,18px);font-family:'DM Sans',sans-serif;font-size:clamp(13px,1.45vw,19px);font-weight:400;letter-spacing:.01em;line-height:normal;color:inherit;text-align:left;cursor:pointer;transition:color .3s}
.svc>li:first-child .svc-head{padding-top:0}
.svc-head:hover,.svc-item.open .svc-head{color:#cc4200}
.svc-head:focus-visible{outline:1px solid currentColor;outline-offset:6px}
.svc-icon{position:relative;flex-shrink:0;width:11px;height:11px}
.svc-icon::before,.svc-icon::after{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:currentColor;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.svc-icon::after{transform:rotate(90deg)}
.svc-item.open .svc-icon::after{transform:rotate(0deg)}
.svc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.2,.7,.2,1)}
.svc-item.open .svc-panel{grid-template-rows:1fr}
.svc-panel>div{overflow:hidden}
.svc-list{list-style:none;padding:0 0 clamp(18px,2.2vw,28px);font-family:'DM Sans',sans-serif;font-size:clamp(12px,1.1vw,15px);line-height:1.95;color:#555;opacity:0;transform:translateY(-6px);transition:opacity .35s ease,transform .5s cubic-bezier(.2,.7,.2,1)}
.svc-item.open .svc-list{opacity:1;transform:none;transition-delay:.1s}
@media (prefers-reduced-motion:reduce){.svc-panel,.svc-list,.svc-icon::before,.svc-icon::after{transition:none}}
.info{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:clamp(60px,10vw,120px) 0 clamp(60px,8vw,100px);font-size:clamp(10px,1vw,12px);line-height:1.45}
.info a{text-decoration:none}
.info p:last-child{max-width:300px}

/* ---------- HUVY AI: "AI creators. Not followers." + diagrama humano ↔ IA ---------- */
.huvy-ai{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:clamp(40px,5vw,96px);align-items:center;max-width:1366px;margin:0 auto;padding:clamp(90px,12vw,190px) 4.3vw;background:#fff;color:#111;overflow:hidden}
.ai-copy{container-type:inline-size}
.ai-title{font-family:'Public Sans',system-ui,sans-serif;font-weight:700;font-size:min(15.5cqw,108px);line-height:1.05;letter-spacing:-.045em;margin-bottom:clamp(36px,4.4vw,64px)}
.ai-line{display:block;white-space:nowrap}
.lang-es .ai-title{font-size:min(13cqw,96px)}
.ai-title em{font-family:'Playfair Display',serif;font-style:italic;font-weight:400;font-size:1.06em;letter-spacing:-.02em;margin-left:.1em}
.ai-mark{position:relative;display:inline-block}
.ai-circle{position:absolute;left:-8%;top:-17%;width:113%;height:138%;overflow:visible;pointer-events:none}
.ai-circle path{fill:none;stroke:#e83c18;stroke-linecap:round;stroke-linejoin:round}
.ai-circle-path{stroke-width:4.2}
.ai-circle-dot{stroke-width:9}
.ai-body p{font-size:clamp(15px,1.3vw,19px);line-height:1.5;color:#2a2a2a;max-width:34em}
.ai-body p+p{margin-top:1.1em}
.ai-body strong{font-weight:600;color:#111}
.ai-body em{font-family:'Playfair Display',serif;font-style:italic;font-size:1.08em}

/* Diagrama: lienzo con proporción fija; posiciones en unidades del diseño (600×560, o 360×470 si es angosto) */
.ai-diagram{container-type:inline-size;width:100%}
.ai-canvas{--W:600;--H:560;--ai-base:1.1s;position:relative;aspect-ratio:600/560}
.ai-canvas > *{position:absolute;margin:0}
.ai-lines{inset:0;width:100%;height:100%;overflow:visible}
.ai-lines-m{display:none}
.ai-lines path{fill:none;stroke:#1a1a1a;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}
.ai-lines .ai-d-top,.ai-lines .ai-d-human,.ai-lines .ai-d-ai,.ai-lines .ai-head{stroke-width:1.5}
.ai-lines .ai-orange{stroke:#e83c18}
.ai-lines .ai-dots{stroke:#333;stroke-width:1.4;stroke-dasharray:1.5 5.5}
.ai-lines mask path{stroke:#fff;stroke-width:8}
.ai-canvas > p,.ai-canvas > img,.ai-canvas > div{left:calc(var(--x) / var(--W) * 100%);top:calc(var(--y) / var(--H) * 100%);font-size:calc(var(--fs,14) / var(--W) * 100cqw)}
.ai-hand{font-family:'Nothing You Could Do',cursive;color:#222;line-height:1.15;white-space:nowrap;padding:.1em .2em}
.ai-hand.ai-orange{color:#e83c18}
.ai-note-top{--x:596;--y:22;--fs:22;left:auto!important;right:calc((var(--W) - var(--x)) / var(--W) * 100%);transform:rotate(-5deg);transform-origin:right bottom}
.ai-logo{--x:300;--y:104;height:calc(54 / var(--W) * 100cqw);width:auto;transform:translateX(-50%);filter:invert(1)}
.ai-pillars{--x:300;--y:184;--fs:11.5;transform:translateX(-50%);display:flex;flex-wrap:wrap;justify-content:center;width:100%;font-weight:500;letter-spacing:.2em;line-height:1.9;color:#555;white-space:nowrap}
.ai-pillars i{font-style:normal;margin:0 .75em}
.ai-side{--y:318;--fs:14;width:46%;transform:translateX(-50%);text-align:center}
.ai-side-human{--x:150}
.ai-side-ai{--x:450}
.ai-side h3{display:flex;align-items:center;justify-content:center;height:2.7em;margin-bottom:calc(16 / var(--W) * 100cqw);font-size:1em;font-weight:600;letter-spacing:.16em;line-height:1.35;color:#111}
.ai-side ul{list-style:none;font-size:calc(15 / 14 * 1em);line-height:1.75;color:#555;letter-spacing:.01em}
.ai-note-human{--x:4;--y:240;--fs:21;transform:rotate(-5deg);transform-origin:left bottom}
.ai-note-ai{--x:598;--y:474;--fs:22;left:auto!important;right:calc((var(--W) - var(--x)) / var(--W) * 100%);transform:rotate(-7deg);transform-origin:right bottom}
.ai-note-cross{--x:300;--y:505;--fs:19;transform:translateX(-50%)}

@container (max-width:479px){
  .ai-canvas{--W:360;--H:480;aspect-ratio:360/480}
  .ai-lines-d{display:none}
  .ai-lines-m{display:block}
  .ai-note-top{--x:356;--y:12;--fs:16.5}
  .ai-logo{--x:180;--y:72;height:calc(38 / var(--W) * 100cqw)}
  .ai-pillars{--x:180;--y:124;--fs:9.5;letter-spacing:.17em}
  .ai-pillars .ai-br{flex-basis:100%;height:0;overflow:hidden;margin:0}
  .ai-side{--y:246;--fs:11;width:48%}
  .ai-side-human{--x:90}
  .ai-side-ai{--x:270}
  .ai-side h3{margin-bottom:calc(12 / var(--W) * 100cqw)}
  .ai-side ul{font-size:calc(12.5 / 11 * 1em);line-height:1.7}
  .ai-note-human{--x:0;--y:176;--fs:16}
  .ai-note-ai{--x:358;--y:454;--fs:16.5}
  .ai-note-cross{--x:180;--y:436;--fs:14}
}

@media (max-width:900px){
  .huvy-ai{grid-template-columns:1fr;gap:clamp(56px,12vw,90px)}
  .ai-diagram{max-width:600px;margin:0 auto}
  .ai-canvas{--ai-base:.1s}
}

/* Animación: entra en orden al llegar a la sección (solo con JS y si se permite movimiento) */
@media (prefers-reduced-motion:no-preference){
  .js .ai-line{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
  .js .ai-line+.ai-line{transition-delay:.1s}
  .js .ai-copy.ai-go .ai-line{opacity:1;transform:none}
  .js .ai-circle-path{stroke-dasharray:1 1;stroke-dashoffset:1}
  .js .ai-copy.ai-go .ai-circle-path{stroke-dashoffset:0;transition:stroke-dashoffset .85s cubic-bezier(.55,.08,.35,1) .6s}
  .js .ai-circle-dot{opacity:0}
  .js .ai-copy.ai-go .ai-circle-dot{opacity:1;transition:opacity .06s linear 1.42s}
  .js .ai-body p{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
  .js .ai-body p:nth-child(1){transition-delay:1s}
  .js .ai-body p:nth-child(2){transition-delay:1.1s}
  .js .ai-body p:nth-child(3){transition-delay:1.2s}
  .js .ai-copy.ai-go .ai-body p{opacity:1;transform:none}

  .js .ai-logo,.js .ai-pillars,.js .ai-side{opacity:0;translate:0 14px;transition:opacity .7s ease var(--d),translate .8s cubic-bezier(.2,.7,.2,1) var(--d)}
  .js .ai-logo{--d:var(--ai-base)}
  .js .ai-pillars{--d:calc(var(--ai-base) + .1s)}
  .js .ai-side-human{--d:calc(var(--ai-base) + .95s)}
  .js .ai-side-ai{--d:calc(var(--ai-base) + 1.05s)}
  .js .ai-diagram.ai-go :is(.ai-logo,.ai-pillars,.ai-side){opacity:1;translate:0 0}

  .js .ai-draw{stroke-dasharray:1 1;stroke-dashoffset:1}
  .js .ai-diagram.ai-go .ai-draw{stroke-dashoffset:0;transition:stroke-dashoffset var(--dur,.5s) cubic-bezier(.45,.05,.35,1) var(--d)}
  .js .ai-head{opacity:0}
  .js .ai-diagram.ai-go .ai-head{opacity:1;transition:opacity .1s linear var(--d)}
  .js .ai-d-trunk{--d:calc(var(--ai-base) + .3s);--dur:.26s}
  .js .ai-d-arm{--d:calc(var(--ai-base) + .52s);--dur:.48s}
  .js .ai-d-cross{--d:calc(var(--ai-base) + 1.3s);--dur:.45s}
  .js .ai-head.ai-d-cross{--d:calc(var(--ai-base) + 1.72s)}
  .js .ai-draw.ai-d-top{--d:calc(var(--ai-base) + 1.95s);--dur:.55s}
  .js .ai-head.ai-d-top{--d:calc(var(--ai-base) + 2.48s)}
  .js .ai-draw.ai-d-human{--d:calc(var(--ai-base) + 2.05s);--dur:.35s}
  .js .ai-head.ai-d-human{--d:calc(var(--ai-base) + 2.38s)}
  .js .ai-draw.ai-d-ai{--d:calc(var(--ai-base) + 2.2s);--dur:.38s}
  .js .ai-head.ai-d-ai{--d:calc(var(--ai-base) + 2.56s)}

  .js .ai-hand{clip-path:inset(0 100% 0 0)}
  .js .ai-diagram.ai-go .ai-hand{clip-path:inset(0 0 0 0);transition:clip-path var(--dur,.6s) cubic-bezier(.35,0,.55,1) var(--d)}
  .js .ai-note-cross{--d:calc(var(--ai-base) + 1.15s);--dur:.55s}
  .js .ai-note-top{--d:calc(var(--ai-base) + 1.45s);--dur:.7s}
  .js .ai-note-human{--d:calc(var(--ai-base) + 1.6s);--dur:.5s}
  .js .ai-note-ai{--d:calc(var(--ai-base) + 1.75s);--dur:.45s}
}

/* ---------- WORK WITH US: cuestionario por pasos (panel negro + pregunta) ---------- */
.wwu{background:#fff;color:#111}
.wq{--aside:clamp(300px,31vw,540px);--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.wq [hidden]{display:none!important}
.wq-step,.wq-done{display:grid;grid-template-columns:var(--aside) minmax(0,1fr);min-height:calc(100svh - var(--head-h))}
.wq-aside{display:flex;flex-direction:column;background:#000;color:#fff;padding:clamp(60px,7vw,110px) clamp(28px,4.4vw,72px) clamp(40px,5vw,80px)}
.wq-num{position:relative;font-family:'Montserrat',sans-serif;font-weight:400;font-size:clamp(16px,1.3vw,20px);letter-spacing:.04em;padding-bottom:14px}
.wq-num::after{content:"";position:absolute;left:0;bottom:0;width:40px;height:1.5px;background:#fff}
.wq-kicker{margin-top:clamp(80px,17vh,190px);max-width:9.5em;font-family:'Montserrat',sans-serif;font-weight:400;font-size:clamp(28px,2.6vw,44px);line-height:1.22;letter-spacing:.035em;text-transform:uppercase;overflow-wrap:break-word}
.wq-kicker em{font-style:italic}

.wq-main{width:100%;max-width:1120px;padding:clamp(36px,4.4vw,60px) clamp(24px,5vw,96px) clamp(48px,5vw,80px) clamp(24px,5vw,80px)}
.wq-progress{margin-bottom:clamp(30px,3.4vw,44px)}
.wq-bar{position:relative;display:block;height:4px;background:#e9e9ea;border-radius:4px;overflow:hidden}
.wq-bar i{position:absolute;inset:0 auto 0 0;width:var(--p,8%);background:#000;border-radius:4px;transition:width .55s cubic-bezier(.3,.7,.3,1)}
.wq-sec{font-family:'Montserrat',sans-serif;font-weight:500;font-size:clamp(12px,.95vw,14px);letter-spacing:.2em;margin-bottom:clamp(18px,2vw,26px)}
.wq-q{font-family:'DM Sans',sans-serif;font-weight:500;font-size:clamp(28px,3vw,46px);line-height:1.12;letter-spacing:-.02em;outline:none}
.wq-help{font-family:'DM Sans',sans-serif;font-size:clamp(15px,1.2vw,19px);line-height:1.5;color:#7a7a80;max-width:42em;margin-top:10px}

.wq-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.4vw,22px);margin-top:clamp(26px,2.8vw,38px)}
.wq-opt{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(16px,2vw,32px);min-height:clamp(84px,7vw,104px);padding:18px clamp(18px,2vw,30px);border:1px solid #e2e2e4;border-radius:6px;background:#fff;color:#111;cursor:pointer;transition:border-color .2s,background .25s,color .25s}
.wq-opt.has-sub{min-height:clamp(104px,8.2vw,128px)}
.wq-opt:hover{border-color:#111}
.wq-opt input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.wq-ind{display:grid;place-items:center;width:clamp(32px,2.4vw,38px);height:clamp(32px,2.4vw,38px);border:1.4px solid #222;border-radius:50%;transition:background .2s,border-color .2s}
.wq-tick{width:15px;height:15px;fill:none;stroke:#000;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .15s}
.wq-opt-t{display:block;font-family:'DM Sans',sans-serif;font-size:clamp(16px,1.3vw,20px);line-height:1.3}
.wq-opt-s{display:block;margin-top:7px;font-family:'DM Sans',sans-serif;font-size:clamp(11px,.85vw,13px);letter-spacing:.08em;color:#8a8a90;transition:color .25s}
.wq-arrow{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.wq-opt:hover .wq-arrow{transform:translateX(3px)}
.wq-opt:has(input:checked){background:#000;border-color:#000;color:#fff}
.wq-opt:has(input:checked) .wq-ind{background:#fff;border-color:#fff}
.wq-opt:has(input:checked) .wq-tick{opacity:1}
.wq-opt:has(input:checked) .wq-opt-s{color:#c4c4c8}
.wq-opt:has(input:focus-visible){outline:2px solid #e83c18;outline-offset:3px}
.wq-opts-sm .wq-opt{min-height:clamp(66px,5vw,78px)}

.wq-other{margin-top:20px;max-width:460px}
.wq-label{display:block;font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.02em;color:#444;margin-bottom:8px}
.wq-label b{color:#e83c18;font-weight:500}
.wq-input{width:100%;height:56px;padding:0 18px;border:1px solid #d9d9dc;border-radius:6px;background:#fff;font:400 16px 'DM Sans',sans-serif;color:#111;outline:none;transition:border-color .2s,box-shadow .2s}
.wq-input:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.08)}
.wq-input::placeholder{color:#a3a3ab}
.wq-area{height:auto;min-height:180px;padding:16px 18px;line-height:1.5;resize:vertical;margin-top:clamp(26px,2.8vw,38px)}
.wq-optional{font-family:'DM Sans',sans-serif;font-size:13px;color:#888;margin-top:8px}
.wq-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;margin-top:clamp(26px,2.8vw,38px)}
.wq-sub{font-family:'DM Sans',sans-serif;font-weight:500;font-size:clamp(19px,1.7vw,24px);letter-spacing:-.01em;margin-top:clamp(34px,3.6vw,48px)}
.wq-sub + .wq-opts{margin-top:16px}
.wq-consent{display:flex;align-items:flex-start;gap:14px;margin-top:clamp(28px,3vw,40px);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.45;color:#333;cursor:pointer}
.wq-consent input{position:absolute;opacity:0;width:1px;height:1px}
.wq-box{flex-shrink:0;display:grid;place-items:center;width:22px;height:22px;margin-top:1px;border:1.4px solid #222;border-radius:4px;transition:background .2s}
.wq-box .wq-tick{stroke:#fff}
.wq-consent input:checked + .wq-box{background:#000;border-color:#000}
.wq-consent input:checked + .wq-box .wq-tick{opacity:1}
.wq-consent input:focus-visible + .wq-box{outline:2px solid #e83c18;outline-offset:3px}
.wq-consent a{color:#111;text-underline-offset:3px}
.wq-consent a:hover{color:#e83c18}
.wq-error{margin-top:18px;font-family:'DM Sans',sans-serif;font-size:14px;color:#c92f0f}

.wq-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:clamp(30px,3.4vw,48px)}
.wq-back{background:none;border:0;padding:10px 0;font:500 12px 'DM Sans',sans-serif;letter-spacing:.16em;color:#777;cursor:pointer;transition:color .2s}
.wq-back:hover{color:#111}
.wq-next,.wq-send,.wq-home{margin-left:auto;display:inline-flex;align-items:center;justify-content:space-between;gap:clamp(26px,3vw,48px);min-height:clamp(58px,4.4vw,68px);padding:0 clamp(28px,3vw,50px);border:0;border-radius:999px;background:#000;color:#fff;font:500 clamp(13px,1vw,15px) 'DM Sans',sans-serif;letter-spacing:.14em;text-decoration:none;cursor:pointer;transition:background .25s,opacity .25s}
.wq-next:hover:not(:disabled),.wq-send:hover:not(:disabled),.wq-home:hover{background:#2a2a2a}
.wq-next:hover:not(:disabled) .wq-arrow,.wq-send:hover:not(:disabled) .wq-arrow,.wq-home:hover .wq-arrow{transform:translateX(4px)}
.wq-next:disabled,.wq-send:disabled{opacity:.25;cursor:not-allowed}
.wq-next:focus-visible,.wq-send:focus-visible,.wq-home:focus-visible,.wq-back:focus-visible{outline:2px solid #e83c18;outline-offset:3px}
html:not(.wq-ready) .wq-back,html:not(.wq-ready) .wq-next{display:none}

.wq-done .wq-main{display:flex;flex-direction:column;justify-content:center}
.wq-done-text{font-family:'DM Sans',sans-serif;font-size:clamp(16px,1.3vw,19px);line-height:1.55;color:#555;max-width:34em;margin-top:18px}
.wq-done .wq-nav{justify-content:flex-start}
.wq-done .wq-home{margin-left:0}
.wq-mark{position:relative;display:inline-block}
.wq-mark svg{position:absolute;left:-12%;top:-22%;width:128%;height:150%;overflow:visible;pointer-events:none}
.wq-mark path{fill:none;stroke:#e83c18;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}

@media (prefers-reduced-motion:no-preference){
  .wq-ready :is(.wq-step,.wq-done) :is(.wq-main,.wq-num,.wq-kicker){opacity:0;transform:translateY(12px)}
  .wq-ready :is(.wq-step,.wq-done).wq-in :is(.wq-main,.wq-num,.wq-kicker){opacity:1;transform:none;transition:opacity .45s ease,transform .55s cubic-bezier(.2,.7,.2,1)}
  .wq-ready .wq-in .wq-kicker{transition-delay:.06s}
  .wq-mark path{stroke-dasharray:1 1;stroke-dashoffset:1}
  .wq-done.wq-in .wq-mark path{stroke-dashoffset:0;transition:stroke-dashoffset .85s cubic-bezier(.55,.08,.35,1) .5s}
}
@media (max-width:1024px){
  .wq-opts{grid-template-columns:1fr}
}
@media (max-width:800px){
  .wq-step,.wq-done{grid-template-columns:1fr;min-height:0}
  .wq-aside{padding:28px 20px 30px}
  .wq-num{font-size:14px;padding-bottom:10px}
  .wq-num::after{width:28px}
  .wq-kicker{margin-top:20px;max-width:none;font-size:clamp(24px,7vw,32px)}
  .wq-main{padding:28px 20px 36px}
  .wq-fields{grid-template-columns:1fr}
  .wq-opt,.wq-opt.has-sub{min-height:76px}
  .wq-nav{position:sticky;bottom:0;background:linear-gradient(rgba(255,255,255,0),#fff 30%);padding:22px 0 14px}
  .wq-next,.wq-send{flex:1}
  .wq-done .wq-main{min-height:50svh}
}

/* ---------- páginas legales (privacidad, términos) ---------- */
.legal{max-width:760px;margin:0 auto;padding:clamp(56px,8vw,120px) 20px clamp(80px,10vw,140px);font-family:'DM Sans',sans-serif;color:#222}
.legal-es,.lang-es .legal-en{display:none}
.lang-es .legal-es{display:block}
.legal h1{font-family:'Public Sans',system-ui,sans-serif;font-weight:700;font-size:clamp(36px,5.4vw,68px);line-height:1;letter-spacing:-.04em;color:#111}
.legal-date{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#e83c18;margin:18px 0 clamp(28px,3.4vw,44px)}
.legal h2{font-family:'Playfair Display',serif;font-style:italic;font-weight:400;font-size:clamp(21px,2vw,27px);color:#111;margin:clamp(30px,3.4vw,44px) 0 10px}
.legal p,.legal li{font-size:clamp(15px,1.15vw,17px);line-height:1.6}
.legal ul{padding-left:1.2em;margin-bottom:14px}
.legal p{margin-bottom:12px}
.legal li+li{margin-top:8px}
.legal a{color:#111;text-underline-offset:3px}
.legal a:hover{color:#e83c18}

/* ---------- Caso María José Calero (versión Canva 2026-09-28) ---------- */
.mj-strip{display:grid;grid-template-columns:repeat(6,1fr);height:clamp(28px,4.6vw,76px);margin:10.5vw 0 2.6vw}
.mj-strip i:nth-child(1){background:#1c1c1c}.mj-strip i:nth-child(2){background:#204d39}.mj-strip i:nth-child(3){background:#a29c50}
.mj-strip i:nth-child(4){background:#c0b3a0}.mj-strip i:nth-child(5){background:#eeebe4}.mj-strip i:nth-child(6){background:#201614}
.mj-strip-inset{margin:3.4vw 7.1vw 5.1vw}

.mj-brief{position:relative;display:grid;grid-template-columns:41.3% 1fr;align-items:end;background:#2b2b2b;color:#edf0f2;padding-top:5.5vw}
.mj-brief-photo{width:100%;aspect-ratio:357/435;object-fit:cover;object-position:50% 22%;display:block}
.mj-brief-copy{align-self:start;padding:0 10.2% 5vw 16%}
.mj-block{position:relative;display:grid;grid-template-columns:35% 1fr;padding-top:clamp(10px,1vw,16px)}
.mj-block::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(237,240,242,.55)}
.mj-block + .mj-block{margin-top:clamp(28px,3.2vw,56px)}
.mj-block h2,.mj-pair h2{font-family:'Public Sans',sans-serif;font-weight:700;font-size:clamp(10px,.86vw,14px);letter-spacing:.16em;line-height:1.6}
.mj-block p,.mj-pair p{font-family:'Public Sans',sans-serif;font-weight:400;font-size:clamp(14px,1.24vw,21px);line-height:1.5}
.mj-block p + p{margin-top:1.2em}

.mj-goal{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4vw;padding:8vw 4.8vw 6vw;color:#000}
.mj-pair{display:grid;grid-template-columns:30% 1fr;align-items:center;gap:1.4vw}
.mj-pair p{max-width:28em}

.mj-identity{text-align:center;padding:2vw 0 15vw}
.mj-logo{display:block;margin:0 auto;height:clamp(90px,10.3vw,190px);width:auto}
.mj-cols{display:grid;grid-template-columns:1fr 1fr;gap:6.9vw;padding:0 7.1vw;text-align:left}
.mj-identity .mj-cols p{font-family:'Inter Tight',sans-serif;font-size:clamp(13px,1.18vw,19px);line-height:1.35;color:#0a1704}
.mj-cols b{font-weight:600}
.trio.mj-trio{padding-top:0;padding-bottom:6.3vw}

.mj-studio{position:relative;aspect-ratio:1512/850;background:#8d8a63 url(/img/pb-studio.jpg) -13.8vw 0/129vw auto no-repeat;overflow:hidden}
.mj-studio-card,.mj-studio-portrait{position:absolute;object-fit:cover;box-shadow:0 1.2vw 2.6vw rgba(0,0,0,.18)}
.mj-studio-card{left:5.4%;top:13.6%;width:30.1%;aspect-ratio:455/608}
.mj-studio-portrait{left:38.6%;top:12.2%;width:27.8%;aspect-ratio:421/631}
.mj-studio-list{position:absolute;left:74.3%;top:71.8%;list-style:none;font-family:'Montserrat',sans-serif;font-weight:300;font-size:clamp(10px,1.1vw,18px);line-height:1.95;color:#f8f3f1}

.mj-pillars{background:#201712;color:#fff}
.mj-pillar-grid{display:grid;grid-template-columns:repeat(3,22.9vw);gap:.8vw;justify-content:center}
.mj-pillar-grid figure{margin:0}
.mj-pillar-grid img{display:block;width:100%;aspect-ratio:346/597;object-fit:cover}
.mj-pillar-grid figcaption{padding-top:4vw;font-family:'Inter Tight',sans-serif;font-size:clamp(12px,1.15vw,18px);line-height:1.4;padding-right:1.5vw}
.mj-pillar-grid b{display:block;font-weight:400;margin-bottom:.2em}
.mj-made{padding:6.8vw 0 3.4vw 17.7vw;font-family:'Nothing You Could Do',cursive;font-size:clamp(20px,2.4vw,40px);color:#fff;transform:rotate(-4deg);transform-origin:left}
.mj-effect{border-top:1px solid rgba(255,255,255,.28);padding:6vw 3.6vw 8vw 7.8vw}
.mj-effect h2{font-family:'Inter Tight',sans-serif;font-weight:400;font-size:clamp(26px,2.6vw,46px);letter-spacing:-.045em;color:#f8f3f1;margin-bottom:4vw}
.mj-effect .mj-cols{padding:0;gap:6.4vw;grid-template-columns:38.4fr 43.4fr}
.mj-effect .mj-cols p{font-family:'Inter Tight',sans-serif;font-size:clamp(13px,1.16vw,19px);line-height:1.35;color:#f8f3f1}

.making-frame .mj-bts{top:auto;bottom:24%;font-size:clamp(11px,1.15vw,18px);font-weight:400;letter-spacing:.16em;color:#e7dfd8}
.pb-sun.mj-sun{aspect-ratio:1512/849;object-position:50% 45%}
.news.mj-closing{font-weight:400;font-size:clamp(30px,4.6vw,84px);letter-spacing:-.048em;line-height:1.03;padding:2.6vw 2.4vw 9vw;color:#f8f3f1}

@media (max-width:760px){
  .mj-strip{margin-top:14vw}
  .mj-brief{grid-template-columns:1fr;padding-top:0}
  .mj-brief-photo{order:2;aspect-ratio:4/5}
  .mj-brief-copy{padding:40px 20px}
  .mj-block{grid-template-columns:1fr;gap:10px}
  .mj-goal{grid-template-columns:1fr;gap:34px;padding:56px 20px}
  .mj-pair{grid-template-columns:1fr;gap:8px}
  .mj-identity{padding:24px 0 64px}
  .mj-strip-inset{margin:28px 20px 36px}
  .mj-cols,.mj-effect .mj-cols{grid-template-columns:1fr;gap:22px;padding:0 20px}
  .mj-effect .mj-cols{padding:0}
  .mj-studio-list{left:auto;right:4%;top:auto;bottom:4%;font-size:9px;line-height:1.7}
  .mj-pillar-grid{grid-template-columns:1fr;gap:34px;padding:0 20px}
  .mj-pillar-grid figcaption{padding-top:14px}
  .mj-made{padding:48px 20px 28px 32px}
  .mj-effect{padding:48px 20px 56px}
  .mj-effect h2{margin-bottom:24px}
  .news.mj-closing{font-size:9vw;padding:28px 20px 48px}
}

/* Caso MJC — movimiento editorial al hacer scroll (una sola vez).
   Cada cosa tiene su gesto: textos suaves y rápidos, logo y paleta propios, fotos más lentas. */
@media (prefers-reduced-motion:no-preference){
  .js :is([data-m="text"],[data-m="block"] h2,[data-m="block"] p,[data-m="figure"] figcaption),
  .js [data-m="block"]::before{
    opacity:0;translate:0 var(--my,12px);
    transition:opacity .8s cubic-bezier(.25,.46,.45,.94),translate .8s cubic-bezier(.22,1,.36,1);
    transition-delay:calc(var(--mq,0) * 120ms + var(--md,0ms))}
  .js [data-m="block"] h2{--md:90ms}
  .js [data-m="block"] p{--md:180ms}
  .js [data-m="block"] p + p{--md:270ms}
  .js [data-m="figure"] figcaption{--my:9px;--md:450ms}
  .js .mj-cols [data-m="text"]{--my:10px}
  .js .mj-studio-list[data-m]{--md:300ms}
  .js :is([data-m="photo"],[data-m="figure"] img,[data-m="portrait"]){
    opacity:0;scale:1.02;translate:0 14px;
    transition:opacity 1s cubic-bezier(.25,.46,.45,.94),scale 1.1s cubic-bezier(.22,1,.36,1),translate 1s cubic-bezier(.22,1,.36,1);
    transition-delay:calc(var(--mq,0) * 120ms + var(--md,0ms))}
  .js img[data-m="portrait"]{scale:1.025;translate:0 10px;--md:220ms;transition-duration:1.15s,1.2s,1.15s}
  .js [data-m="logo"]{opacity:0;scale:.96;transition:opacity 1s cubic-bezier(.25,.46,.45,.94),scale 1.1s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--mq,0) * 120ms)}
  .js [data-m="wipe"]{clip-path:inset(0 100% 0 0);transition:clip-path 1.3s cubic-bezier(.65,.05,.25,1);transition-delay:calc(var(--mq,0) * 120ms + 80ms)}
  .js .m-in:is([data-m="text"],[data-m="photo"],[data-m="portrait"],[data-m="logo"]),
  .js .m-in:is([data-m="block"],[data-m="figure"]) :is(h2,p,img,figcaption),
  .js [data-m="block"].m-in::before{opacity:1;scale:1;translate:0 0}
  .js .m-in[data-m="wipe"]{clip-path:inset(0 0 0 0)}
}

/* ---------- innovation hub ---------- */
.hub-title{background:linear-gradient(#f7f7f7 0%,#fff 12%,#f2d2b8 55%,#bfd3d0 100%);padding:clamp(80px,17vw,240px) 3.6vw clamp(10px,1.4vw,20px)}
.hub-title h2{font-family:'DM Sans',sans-serif;font-weight:400;font-size:clamp(52px,14.2vw,200px);line-height:.8;letter-spacing:-.02em;white-space:nowrap}
.hub-img{position:relative;height:clamp(340px,56vw,760px);background:url(img/innovation-green.jpg) center 62%/cover no-repeat}
.social{display:flex;gap:10px;align-items:center}
.social a{display:grid;place-items:center;width:20px;height:20px;transition:opacity .2s}
.social a:hover{opacity:.6}
.social svg{width:100%;height:100%;fill:currentColor}
.hub-img .social{position:absolute;left:50%;bottom:4.5%;transform:translateX(-50%);color:#fff}

/* ---------- video de marca ---------- */
.reel{background:#000;padding:clamp(40px,6.4vw,90px) 0 clamp(22px,3vw,40px)}
.reel-frame{position:relative;width:71%;margin:0 auto;border-radius:clamp(6px,.9vw,12px);overflow:hidden;background:#111}
.reel-video{display:block;width:100%;aspect-ratio:1920/1246;object-fit:cover}
.reel-sound{position:absolute;right:clamp(12px,2vw,28px);bottom:clamp(12px,2vw,28px);background:rgba(0,0,0,.35);color:#fff;border:1px solid rgba(255,255,255,.7);border-radius:30px;padding:9px 16px;font:400 11px/1 'DM Sans',sans-serif;letter-spacing:.08em;cursor:pointer;backdrop-filter:blur(6px);transition:background .25s,color .25s}
.reel-sound:hover,.reel-sound[aria-pressed="true"]{background:#fff;color:#000}
.reel .social{justify-content:center;color:#fff;margin-top:clamp(12px,1.6vw,20px)}
.reel .social a{width:18px;height:18px}

/* ---------- about / footer (black) — estructura tipo Lustre ---------- */
.about{background:#000;color:#fff;position:relative;padding:clamp(40px,7vw,110px) clamp(18px,3.6vw,48px) clamp(24px,2.6vw,40px)}
.about-copy{font-family:'Montserrat',sans-serif;font-weight:400;font-size:clamp(14px,1.9vw,27px);line-height:1.4;max-width:980px}
.about-tag{font-size:.64em;letter-spacing:.12em;margin-right:.7em;white-space:nowrap;position:relative;top:-.12em}
.about-cta{display:inline-flex;align-items:center;gap:clamp(10px,1vw,16px);margin-top:clamp(28px,3vw,46px);background:#fff;color:#111;border-radius:60px;padding:clamp(9px,1vw,15px) clamp(12px,1.4vw,22px) clamp(9px,1vw,15px) clamp(16px,1.8vw,28px);font:400 clamp(10px,.95vw,13px)/1 'DM Sans',sans-serif;letter-spacing:.04em;text-decoration:none;transition:background .25s,transform .25s}
.about-cta svg{width:clamp(15px,1.4vw,21px);height:clamp(15px,1.4vw,21px)}
.about-cta:hover{background:#e9e9e9;transform:translateY(-2px)}
.about-info{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-top:clamp(34px,4.2vw,70px)}
.about-links{list-style:none;font:400 clamp(10px,.95vw,13px)/1.34 'DM Sans',sans-serif;letter-spacing:.06em}
.about-links a{text-decoration:none;transition:opacity .2s}
.about-links a:hover{opacity:.6}
.about-info .social{gap:clamp(12px,1.4vw,20px);padding:0}
.about-info .social a{width:clamp(18px,1.6vw,22px);height:clamp(18px,1.6vw,22px)}
.wordmark{padding:clamp(34px,7vw,130px) 0 0}
.wordmark img{display:block;width:100%}
.about-legal{text-align:center;margin-top:clamp(20px,2.8vw,46px);font:400 clamp(8px,.8vw,11px)/1.9 'DM Sans',sans-serif;letter-spacing:.1em;color:#8c8c8c}
.about-legal span{margin:0 .4em}
/* en páginas internas el pie empieza directo con WORK WITH US */
body:not(.home) .about-copy{display:none}
body:not(.home) .about-cta{margin-top:0}

/* ---------- CONTACT ---------- */
.ct{background:#f0cdfb;display:grid;grid-template-columns:1fr 1fr;padding:clamp(10px,1.5vw,16px);gap:clamp(20px,4vw,48px);color:#6b0a64}
.ct .card-w{background:#fff;border-radius:18px;padding:clamp(14px,1.6vw,22px) clamp(14px,2.2vw,26px) clamp(20px,2.2vw,26px);display:flex;flex-direction:column;justify-content:space-between;min-height:clamp(380px,53vw,550px)}
.cond{font-family:'Barlow Condensed',sans-serif;font-weight:500;letter-spacing:-.02em;line-height:.9;color:#0b1a0b}
.ct h1{font-size:clamp(44px,6.6vw,78px)}
.ct .card-w p{font-size:clamp(13px,1.5vw,17px);line-height:1.4;max-width:420px}
.ct form{padding:clamp(20px,3vw,34px) clamp(10px,2vw,24px) 0 0;display:flex;flex-direction:column}
.ct h2{font-family:'DM Sans',sans-serif;font-weight:400;font-size:clamp(20px,2.4vw,30px);margin-bottom:clamp(20px,2.4vw,30px)}
.ct label{font-size:14px;margin-bottom:8px}
.ct input,.ct textarea{background:transparent;border:1px solid #b36fb0;border-radius:6px;height:40px;margin-bottom:clamp(22px,3vw,34px);font:inherit;color:#330030;padding:8px 10px;outline:none;transition:border-color .2s,background .2s}
.ct textarea{height:78px;resize:vertical;margin-bottom:clamp(30px,5vw,56px)}
.ct input:focus,.ct textarea:focus{border-color:#6b0a64;background:#f6e0fd}
.ct button{background:#6b0a64;color:#fff;border:0;border-radius:12px;height:44px;font:inherit;font-size:clamp(14px,1.5vw,18px);cursor:pointer;transition:background .2s}
.ct button:hover{background:#4d0048}
.ct small{font-size:9px;text-align:center;margin-top:10px;opacity:.8}
.peer{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px);padding:clamp(10px,1.5vw,16px)}
.peer .left{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:4px}
.peer h2{font-size:clamp(46px,6.2vw,72px)}
.peer p{color:#6b0a64;font-size:clamp(13px,1.4vw,16px);line-height:1.4;max-width:330px}
.peer img{border-radius:18px;width:100%;aspect-ratio:367/408;object-fit:cover}
.back{position:fixed;top:16px;left:16px;z-index:20;background:#fff;border-radius:30px;padding:8px 14px;font-size:12px;text-decoration:none;box-shadow:0 2px 12px rgba(0,0,0,.12)}

/* ---------- PROJECT pages ---------- */
.p-hero{position:relative;height:min(56vw,860px);min-height:420px;background:center/cover no-repeat;color:#fff;text-align:center;overflow:hidden}
.p-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.18),rgba(0,0,0,.05) 50%,rgba(0,0,0,.25))}
.p-hero>*{position:relative;z-index:1}
.kicker{font-family:'Inter Tight',sans-serif;font-size:clamp(10px,1.2vw,15px);letter-spacing:.24em;text-transform:uppercase}
.p-hero .kicker:first-child{position:absolute;top:clamp(20px,3.2vw,44px);left:0;right:0}
.p-hero .title{position:absolute;top:36%;left:0;right:0}
.script{font-family:'Pinyon Script',cursive;font-size:clamp(46px,9vw,130px);line-height:.6;display:block;transform:translateX(6%)}
.p-hero h1{font-family:'Inter Tight',sans-serif;font-weight:400;font-size:clamp(40px,7.4vw,102px);letter-spacing:-.04em;line-height:1}
.p-hero .kicker.low{position:absolute;bottom:13%;left:0;right:0;letter-spacing:.14em}
.p-body{font-family:'Inter Tight',sans-serif;font-size:clamp(12px,1.25vw,15px);line-height:1.4;padding:clamp(40px,6vw,64px) 3.1vw}
.p-body b{font-weight:500}
.p-body.half{max-width:min(470px,100%)}
.gap{height:clamp(40px,7vw,90px)}
.pair{display:grid;grid-template-columns:400fr 330fr;gap:clamp(14px,2.8vw,36px);overflow:hidden}
.pair img{width:100%;aspect-ratio:auto;height:clamp(200px,36vw,480px);object-fit:cover}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(8px,1.3vw,14px);padding:clamp(16px,3vw,34px) 3.1vw}
.trio img{width:100%;aspect-ratio:312/469;object-fit:cover}
.trio.land img{aspect-ratio:312/316}
.trio.sq img{aspect-ratio:1/1}
.dark{background:#000;color:#fff}
.dark .p-body{color:#ddd}
.lla{display:grid;grid-template-columns:1fr 1fr;padding:clamp(20px,3vw,30px) 0 0 3.1vw;gap:20px;min-height:clamp(300px,40vw,560px)}
.lla .l{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:clamp(14px,2vw,24px)}
.lla h2{font-family:'Inter Tight',sans-serif;font-weight:400;font-size:clamp(34px,4.6vw,62px);line-height:1.02;letter-spacing:-.03em}
.lla p{font-family:'Inter Tight',sans-serif;font-size:clamp(10px,1.05vw,13px);line-height:1.4;max-width:420px;color:#ddd}
.lla img{width:100%;height:100%;object-fit:cover;align-self:end;max-height:520px}
.dtrio{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(4px,.6vw,8px);padding:clamp(4px,.6vw,8px) 0 0}
.dtrio img{width:100%;aspect-ratio:342/400;object-fit:cover}
.full{width:100%;object-fit:cover}
.rule{border-top:1px solid #444}
.news{padding:clamp(30px,5vw,56px) 2.4vw clamp(40px,6vw,64px);font-family:'Inter Tight',sans-serif;font-weight:300;font-size:clamp(28px,5.4vw,64px);line-height:1.02;letter-spacing:-.055em}
.news em{font-style:italic}
.nl{display:grid;grid-template-columns:1fr 1fr;padding:clamp(28px,4vw,48px) 3.1vw clamp(28px,4vw,40px)}
.nl form{grid-column:2;display:flex;flex-direction:column;font-family:'Inter Tight',sans-serif}
.nl h3{font-weight:500;font-size:clamp(16px,1.7vw,21px);margin-bottom:clamp(18px,2.2vw,26px)}
.nl label{font-size:11px;font-weight:500;margin-bottom:8px}
.nl input{background:#000;border:1px solid #444;border-radius:4px;height:36px;color:#fff;padding:0 10px;font:inherit;margin-bottom:12px;outline:none}
.nl input:focus{border-color:#aaa}
.nl button{background:#f6f2f0;border:0;border-radius:8px;height:34px;font:inherit;font-size:13px;cursor:pointer;transition:background .2s}
.nl button:hover{background:#fff}
.nl small{font-size:8px;text-align:center;color:#999;margin-top:10px}
/* newsletter: se envía sin salir de la página; el formulario se desvanece y aparece la confirmación */
.nl [hidden]{display:none!important}
.nl form,.nl-done{transition:opacity .35s ease}
.nl form.nl-out,.nl-done.nl-hide{opacity:0}
.nl-done{grid-column:2;font-family:'Inter Tight',sans-serif;color:#fff;outline:none}
.nl-done h3{letter-spacing:.02em}
.nl-done-sub{font-size:clamp(15px,1.4vw,18px);margin-bottom:8px}
.nl-done p:last-child{font-size:clamp(12px,1.05vw,14px);line-height:1.5;color:#bdbdbd;max-width:30em}
.nl-error{font-size:12px;color:#ff8a70;margin-top:4px}
.nl button:disabled{opacity:.6;cursor:default}
.pb-head{display:flex;align-items:center;justify-content:center;position:relative;height:clamp(60px,8.6vw,89px)}
.pb-head img{position:absolute;left:3.6vw;width:clamp(60px,9.5vw,100px);filter:invert(1)}
/* Hero María José Calero en capas: fondo quieto, hoja y Polaroid+clip con movimiento mínimo al hacer scroll */
.pbh{position:relative;overflow:hidden}
.pbh-stage{position:relative;aspect-ratio:1638/779}
.pbh-stage img{display:block}
.pbh-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pbh-leaf{position:absolute;left:0;top:0;width:calc(442 / 1638 * 100%);height:100%;overflow:hidden}
.pbh-leaf img{width:100%;height:100%;object-fit:cover;transform:translate3d(0,var(--leaf,0px),0) scale(1.03);will-change:transform}
.pbh-piece{position:absolute;left:calc(596 / 1638 * 100%);top:calc(58 / 779 * 100%);width:calc(440 / 1638 * 100%);height:auto;transform-origin:50% 60.7%;transform:translate3d(0,var(--py,0px),0) scale(var(--ps,1));filter:drop-shadow(0 .75vw .9vw rgba(38,34,8,.34));will-change:transform}
.pb-hero{position:relative}
.pb-hero img{width:100%;aspect-ratio:1024/487;object-fit:cover}
.pb-hero .kicker{position:absolute;left:9vw;top:67%;color:#fff;font-size:clamp(11px,1.6vw,20px);line-height:1.15;letter-spacing:.14em;max-width:180px}
.palette{padding:clamp(40px,7vw,90px) 15.4vw}
.palette img{width:100%}
.trio-bg{position:relative;background:url(img/pb-trio-bg.jpg) center/cover;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,6vw,90px);padding:clamp(40px,7.6vw,110px) 5.7vw}
.trio-bg img{width:100%;aspect-ratio:242/363;object-fit:cover}
.sierra{position:relative}
.sierra img{width:100%;aspect-ratio:1024/682;object-fit:cover}
.sierra .t{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;gap:clamp(60px,16vw,200px);padding-bottom:6%}
.sierra h2{font-family:'Inter Tight',sans-serif;font-weight:400;font-size:clamp(18px,2.6vw,34px);letter-spacing:.14em}
.sierra small{font-family:'Inter Tight',sans-serif;font-size:clamp(8px,.9vw,11px);letter-spacing:.14em}
.sage{background:#6f7d74;height:clamp(200px,34vw,460px)}

/* ---------- nav en páginas claras ---------- */
.nav.ink{color:#111;top:clamp(14px,2.6vw,34px);right:clamp(16px,2.6vw,34px);font-size:clamp(10px,1.05vw,13px);line-height:1.1;font-weight:400}

/* ---------- MAKE IT HAPPEN ---------- */
.mih{position:relative;background:#f1ece8;min-height:max(100svh,63vw);overflow:hidden}
.mih .logo{position:absolute;top:3.4vw;left:3.9vw;width:clamp(64px,9.6vw,120px);filter:invert(1)}
.mih h1{position:absolute;top:10vw;left:2vw;font-family:'Gloock',serif;font-weight:400;font-size:clamp(70px,15vw,230px);line-height:1;letter-spacing:-.035em;color:#0d1a0d;white-space:nowrap}
.mih figure{position:absolute;box-shadow:0 10px 30px rgba(0,0,0,.08);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.mih figure img{width:100%;height:100%;object-fit:cover}
.mih .f1{left:11.4vw;top:29.3vw;width:13.9vw;aspect-ratio:142/214}
.mih .f2{left:36vw;top:25.5vw;width:22vw;aspect-ratio:238/300;transform:rotate(5deg)}
.mih .f3{left:73.4vw;top:29.3vw;width:22vw;aspect-ratio:226/210;background:#e6e1d8}
.mih figure:hover{transform:scale(1.03) rotate(0deg)}

/* ---------- CASA VISTA AZUL (v2) ---------- */
.v-head{display:flex;align-items:center;justify-content:center;position:relative;height:clamp(52px,6.5vw,66px)}
.v-head img{position:absolute;left:3.9vw;width:clamp(50px,5.8vw,60px);filter:invert(1)}
.v-hero{position:relative;overflow:hidden;height:min(49.8vw,760px);min-height:380px;background:url(img/vista-aerial-hero.jpg) center/cover;color:#fff;text-align:center}
.v-hero::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.12)}
.v-hero>div{position:relative;z-index:1;padding-top:max(clamp(40px,12vw,180px),calc(var(--head-h) + 28px))}
.v-hero .script{transform:translateX(3%);font-size:clamp(46px,8.4vw,120px)}
.v-hero h1{font-family:'Inter Tight',sans-serif;font-weight:300;font-size:clamp(38px,6.6vw,96px);letter-spacing:.01em;line-height:1.05}
.v-hero .kicker{margin-top:clamp(24px,5vw,64px);font-weight:300;letter-spacing:.06em;font-size:clamp(10px,1.45vw,18px);padding:0 16px}
.v-hero .meta{margin-top:clamp(20px,4.5vw,56px);font-family:'Inter Tight',sans-serif;font-weight:500;font-size:clamp(10px,1.08vw,14px);letter-spacing:.04em}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,13vw,130px);padding:clamp(50px,8.6vw,100px) 3.9vw clamp(60px,9vw,110px);font-family:'Inter Tight',sans-serif;font-size:clamp(13px,1.4vw,16px);line-height:1.3}
.two b{font-weight:600}
.two.dark{padding:clamp(40px,5.4vw,60px) 3.1vw clamp(50px,7vw,80px)}
.two .r{text-align:right;padding-top:8px}
.snap{text-align:center;padding:clamp(50px,6.4vw,70px) 16px clamp(50px,7vw,80px);font-family:'Public Sans',sans-serif}
.snap h6{font-size:11px;font-weight:600;letter-spacing:.02em;margin-bottom:clamp(30px,5vw,56px)}
.stats{display:grid;grid-template-columns:repeat(4,auto);justify-content:center;gap:clamp(24px,11vw,140px);text-align:left}
.stats b{display:block;font-size:clamp(15px,1.6vw,18px);font-weight:600}
.stats span{font-size:clamp(11px,1.1vw,12px)}
.vtd{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:clamp(40px,5.6vw,60px) 0 clamp(20px,2.5vw,30px) 6.6vw}
.vtd h2{font-family:'Inter Tight',sans-serif;font-weight:400;font-size:clamp(34px,4.3vw,54px);line-height:1.02;letter-spacing:-.02em}
.vtd .l{display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.vtd p{font-family:'Inter Tight',sans-serif;font-size:clamp(12px,1.45vw,16px);line-height:1.4;margin-left:-3.2vw;max-width:420px}
.vtd p b{font-weight:600}
.vtd img{width:100%;object-fit:cover;aspect-ratio:513/450;padding-right:1.8vw}
.edit{padding:clamp(34px,4.4vw,50px) 3.1vw 0;font-family:'Inter Tight',sans-serif;font-size:clamp(13px,1.45vw,16px);line-height:1.3;max-width:520px}
.edit h6{font-size:clamp(13px,1.45vw,16px);font-weight:600;margin-bottom:clamp(20px,2.6vw,30px)}
.quote{padding:clamp(24px,3vw,34px) 2.4vw clamp(50px,7vw,80px);font-family:'Inter Tight',sans-serif;font-weight:400;font-size:clamp(28px,5.5vw,66px);line-height:1.08;letter-spacing:-.06em;max-width:900px}

/* ---------- PERSONAL BRAND (v2) ---------- */
.pb-colors{padding:clamp(40px,8vw,100px) 16vw clamp(10px,2vw,30px)}
.pb-colors img{width:100%}
.pb-studio{display:grid;grid-template-columns:repeat(3,23.6%);justify-content:space-between;align-items:center;padding:0 5.5%;aspect-ratio:721/481;background:url(img/pb-studio.jpg) center/cover}
.pb-studio img{width:100%;aspect-ratio:2/3;object-fit:cover}
.cause{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:clamp(40px,5.4vw,70px) 8% clamp(90px,17vw,230px)}
.cause h2{font-family:'Inter Tight',sans-serif;font-weight:400;font-size:clamp(38px,6.2vw,84px);line-height:1;letter-spacing:-.04em}
.cause p{font-family:'Inter Tight',sans-serif;font-size:clamp(12px,1.25vw,16px);line-height:1.35;max-width:400px;padding-top:.4em}
.cause p b{font-weight:600}
.making{overflow:hidden;background:#000 url(img/pb-spotlight.jpg) -21vw center/137vw auto no-repeat;display:flex;justify-content:center;height:min(91.5vw,100svh)}
.making-frame{position:relative;height:100%;aspect-ratio:9/16;background:#111;color:#fff;text-align:center}
.making-frame video{width:100%;height:100%;object-fit:cover;display:block}
.making-frame h2{position:absolute;left:-40%;right:-40%;top:40%;font-family:'Inter Tight',sans-serif;font-weight:300;font-size:clamp(20px,4vw,54px);letter-spacing:.1em;text-shadow:0 2px 20px rgba(0,0,0,.25);pointer-events:none}
.making-frame small{position:absolute;left:0;right:0;bottom:15%;font-family:'Inter Tight',sans-serif;font-size:clamp(8px,.9vw,11px);letter-spacing:.16em;pointer-events:none}
.pb-sun{display:block;aspect-ratio:1599/1066}

/* ---------- THE WAIT LIST: THE BIKINI EDIT ---------- */
.waitlist{display:grid;grid-template-columns:1fr 1fr;min-height:min(calc(100svh - var(--head-h)),860px);background:#fff}
.waitlist-media{position:relative;overflow:hidden;background:#e9d9c9}
.waitlist-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.waitlist-body{display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,6vw,90px) clamp(20px,4.4vw,72px)}
.waitlist-body h1{font-family:'Inter Tight',sans-serif;font-weight:400;font-size:clamp(24px,3.2vw,46px);line-height:1.05;letter-spacing:-.01em;color:#111}
.waitlist-intro{font-family:'DM Sans',sans-serif;font-size:clamp(13px,1.1vw,15px);line-height:1.5;color:#333;max-width:520px;margin:clamp(12px,1.6vw,20px) 0 clamp(28px,3.6vw,50px)}
.waitlist-intro span{color:#3f5fd9}
.waitlist form{display:flex;flex-direction:column;max-width:560px}
.waitlist [hidden]{display:none!important}
.waitlist h2{font-family:'DM Sans',sans-serif;font-weight:400;font-size:clamp(20px,2.1vw,28px);color:#111;margin-bottom:clamp(16px,2vw,24px)}
.waitlist label{font-family:'DM Sans',sans-serif;font-size:13px;color:#222;margin-bottom:8px}
.waitlist input,.waitlist textarea{border:1px solid #b9b9b9;border-radius:4px;height:40px;margin-bottom:clamp(18px,2.2vw,26px);padding:8px 10px;font:inherit;color:#111;background:#fff;outline:none;transition:border-color .2s}
.waitlist textarea{height:78px;resize:vertical;margin-bottom:clamp(22px,2.6vw,32px)}
.waitlist input:focus,.waitlist textarea:focus{border-color:#111}
.waitlist button{background:#0d0d0d;color:#fff;border:0;border-radius:24px;height:44px;font:400 clamp(14px,1.2vw,16px) 'DM Sans',sans-serif;cursor:pointer;transition:background .2s}
.waitlist button:hover{background:#333}
.waitlist small{font-family:'DM Sans',sans-serif;font-size:10px;color:#888;text-align:center;margin-top:10px}

/* ---------- WORK: archivo de proyectos ---------- */
.archive{padding:clamp(44px,6vw,96px) clamp(16px,3.6vw,48px) clamp(80px,10vw,150px)}
.archive-head{margin-bottom:clamp(34px,5vw,80px)}
.archive-head .h-xl{margin-bottom:clamp(8px,1vw,14px)}
.archive-intro{font-family:'DM Sans',sans-serif;font-size:clamp(13px,1.15vw,16px);line-height:1.45;color:#555;max-width:440px}
.archive-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(10px,2.2vw,34px);row-gap:clamp(40px,6.4vw,110px)}
.project{display:block;color:inherit;text-decoration:none}
.project-media{aspect-ratio:4/5;overflow:hidden;background:#f1efeb}
.project-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),opacity .5s ease}
.project:hover .project-media img{transform:scale(1.035)}
.project-media--logo{display:grid;place-items:center}
.project-media--logo img{width:44%;height:auto;object-fit:contain;mix-blend-mode:multiply}
.project:hover .project-media--logo img{transform:scale(1.05)}
.project-media--type{display:grid;place-items:center}
.project-media--type span{font-family:'Playfair Display',serif;font-size:clamp(24px,3.4vw,52px);color:#1a1a1a;transition:opacity .5s ease,transform 1.2s cubic-bezier(.2,.7,.2,1)}
.project:hover .project-media--type span{opacity:.6;transform:scale(1.03)}
.project-name{font-family:'DM Sans',sans-serif;font-weight:400;font-size:clamp(11px,1.05vw,15px);letter-spacing:.05em;margin-top:clamp(10px,1.1vw,16px)}
.project-tags{font-family:'DM Sans',sans-serif;font-size:clamp(8px,.7vw,10.5px);line-height:1.5;letter-spacing:.1em;color:#808080;margin-top:3px}
/* caso de estudio en preparación */
.case-stub{min-height:calc(100svh - var(--head-h));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(60px,9vw,140px) 20px}
.case-kicker{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.2em;color:#808080}
.case-logo{width:clamp(110px,14vw,180px);margin-top:28px;mix-blend-mode:multiply}
.case-stub h1{font-family:'Playfair Display',serif;font-weight:400;font-size:clamp(46px,8vw,120px);line-height:1;margin:clamp(14px,2vw,26px) 0}
.case-tags{font-family:'DM Sans',sans-serif;font-size:clamp(9px,.8vw,11px);letter-spacing:.14em;color:#555}
.case-soon{font-family:'DM Sans',sans-serif;font-size:clamp(13px,1.2vw,16px);color:#555;margin-top:clamp(28px,4vw,50px)}
.case-back{margin-top:18px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:.08em;color:#111;text-underline-offset:4px}

/* ---------- responsive ---------- */
@media (max-width:720px){
  .site-actions{gap:12px}.head-pill{padding:9px 14px;font-size:11px}.lang-switch{font-size:11px;gap:4px}
  .hero{height:min(100svh,760px)}
  .hero-title{width:86vw}
  .logos{flex-wrap:wrap;justify-content:center;gap:28px 36px}
  .split,.orange,.ct,.peer,.lla,.nl,.two,.vtd{grid-template-columns:1fr}
  .reel-frame{width:calc(100% - 32px)}
  .hero-title h1{font-size:8.6vw;white-space:normal}
  .hero-title .sub{font-size:9px;letter-spacing:.16em;line-height:1.6}
  .two .r{text-align:left}
  .vtd{padding-left:16px}.vtd p{margin-left:0}
  .stats{grid-template-columns:1fr 1fr;gap:28px 40px}
  .mih{min-height:120vw}.mih h1{top:22vw}.mih .f1{top:52vw;width:26vw}.mih .f2{left:34vw;top:48vw;width:34vw}.mih .f3{left:70vw;top:56vw;width:27vw}
  .orange .media{order:-1}
  .split .copy .bottom{gap:32px;margin-top:40px}
  .cards{grid-template-columns:1fr 1fr;padding:0 16px}
  .work .h-xl{padding-left:16px}
  .strip{flex-direction:column;align-items:flex-start}
  .info{grid-template-columns:1fr}
  .hub-title h2{white-space:normal}
  .nl form,.nl-done{grid-column:1}
  .pair{grid-template-columns:1fr}
  .trio.stack{grid-template-columns:1fr}
  .cause{grid-template-columns:1fr}
  .waitlist{grid-template-columns:1fr;min-height:0}
  .waitlist-media{aspect-ratio:4/5}
  .peer{min-height:0!important;gap:28px;padding-bottom:28px}
  .peer .left{gap:32px}
  .ct .card-w{min-height:0;gap:44px}
  .making{height:auto;padding:24px 0}.making-frame{height:auto;width:78vw}
  .lla img{max-height:none}
}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
