/* Extraído literalmente del sitio estático: los mismos bytes, sin reescribir
   ni reordenar. Los cortes caen en límite de regla. Sólo la portada. */
.shop-head{display:flex;justify-content:flex-end;margin-bottom:1.6rem;}
.shop-nav{display:flex;gap:.8rem;}
.shop-arrow{width:4.4rem;height:4.4rem;display:inline-flex;align-items:center;justify-content:center;font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.7rem;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.28);border-radius:4px;cursor:pointer;transition:background .25s,border-color .25s,opacity .25s;}
.shop-arrow:hover{background:var(--tertiary);border-color:var(--tertiary);}
.shop-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 4*clamp(1rem,1vw,1.5rem))/5);gap:clamp(1rem,1vw,1.5rem);overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.4rem;}
.shop-grid::-webkit-scrollbar{display:none;}
.prod{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-s);overflow:hidden;transition:transform .3s,border-color .3s;}
.prod:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.3);}
.prod__photo{position:relative;aspect-ratio:1/1;overflow:hidden;}
.prod__photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(.1) contrast(1.02);transition:transform .5s;}
.prod:hover .prod__photo img{transform:scale(1.06);}
.prod__iso{position:absolute;top:1rem;left:1rem;font-size:1.1rem;font-weight:700;letter-spacing:.12em;color:#fff;background:var(--tertiary);padding:.4rem .8rem;border-radius:4px;}
.prod__body{display:flex;flex-direction:column;flex:1;padding:1.4rem;}
.prod__name{font-weight:600;font-size:var(--text-s);}
.prod__fmt{font-size:1.2rem;color:rgba(255,255,255,.5);margin-top:.2rem;}
.prod__row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-top:auto;padding-top:1.2rem;}
.prod__price{font-family:Rubik,sans-serif;font-weight:600;font-size:var(--text-l);}
.mini-btn{font-family:'Roboto Mono',ui-monospace,monospace;font-weight:600;font-size:1.2rem;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.26);border-radius:4px;padding:.55rem 1.1rem;cursor:pointer;transition:background .2s,border-color .2s;}
.mini-btn:hover{background:var(--tertiary);border-color:var(--tertiary);}


/* ============ SERVICIOS · VÍDEO ============ */
.svv{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-l);align-items:stretch;}
.svv__content{display:flex;flex-direction:column;justify-content:center;}
.svv__content .v1{max-width:none;}
.svv__video{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--line);aspect-ratio:1/1;background:#0d0d0d;}
.svv__video video{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:contrast(1.03);}
.svv__tag{position:absolute;left:1.4rem;bottom:1.4rem;font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.15rem;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:.6rem 1rem;}
@media(max-width:900px){.svv{grid-template-columns:1fr;}.svv__video{height:auto;aspect-ratio:4/5;max-height:560px;}}

/* ============ OFFERINGS (Servicios · Talleres · Darkroom) ============ */
.offer-grid{display:grid;gap:clamp(1.2rem,1.5vw,2rem);}
.offer-grid--3{grid-template-columns:repeat(3,1fr);}
.offer-grid--2{grid-template-columns:repeat(2,1fr);}
.offer{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:transform .3s,border-color .3s;}
.offer:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.3);}
.offer__photo{position:relative;aspect-ratio:4/3;overflow:hidden;}
.offer__photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(.12) contrast(1.02);transition:transform .5s;}
.offer:hover .offer__photo img{transform:scale(1.05);}
.offer__photo--bw img{filter:grayscale(1) contrast(1.06);}
.offer__body{display:flex;flex-direction:column;flex:1;padding:var(--space-m);}
.offer__name{font-family:Rubik,sans-serif;font-weight:600;font-size:var(--text-l);line-height:1.1;margin-bottom:.4rem;}
.offer__meta{font-size:1.2rem;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:1rem;}
.offer__desc{font-size:var(--text-s);color:rgba(255,255,255,.66);line-height:1.5;margin-bottom:1.6rem;}
.offer__foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto;}
.offer__foot .mini-btn{text-decoration:none;white-space:nowrap;}
.offer__note{display:block;font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.05rem;letter-spacing:.08em;color:rgba(255,255,255,.45);margin-top:.3rem;}
.offer__price{font-family:Rubik,sans-serif;font-weight:600;font-size:var(--text-l);}
.mini-btn{text-decoration:none;}
/* single wide card (darkroom) */
.offer--wide{flex-direction:row;}
.offer--wide .offer__photo{aspect-ratio:auto;width:46%;flex-shrink:0;}
.offer--wide .offer__body{justify-content:center;padding:var(--space-l) var(--space-m);}


/* ============ REVIEWS (editorial) ============ */
.stars{color:#F4B400;letter-spacing:.14em;}
.reviews__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-m);padding-bottom:var(--space-m);border-bottom:1px solid var(--secondary);margin-bottom:var(--space-l);}
.reviews__score{display:flex;align-items:baseline;gap:1.4rem;}
.reviews__num{font-family:Rubik,sans-serif;font-weight:600;font-size:var(--text-2xl);line-height:1;}
.reviews__score .stars{font-size:1.7rem;}
.reviews__meta{font-size:1.35rem;color:rgba(255,255,255,.5);white-space:nowrap;}
.quotes{columns:2;column-gap:var(--space-xl);}
.quote{break-inside:avoid;padding:var(--space-l) 0;border-top:1px solid var(--line);}
.quote:first-child{border-top:0;padding-top:0;}
.quote__mark{display:block;font-family:Rubik,sans-serif;font-weight:600;font-size:5.2rem;line-height:.5;height:2.4rem;color:var(--tertiary);}
.quote p{font-family:Rubik,sans-serif;font-weight:500;font-size:1.6rem;line-height:1.55;color:rgba(255,255,255,.88);margin:0 0 1.4rem;}
.quote__by{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
.quote__name{font-size:1.35rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;}
.quote__meta{font-size:1.25rem;color:rgba(255,255,255,.4);}
.quote__by .stars{font-size:1.2rem;margin-left:auto;}
.reviews__cta{margin-top:var(--space-l);display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;}
.reviews__src{font-size:1.3rem;color:rgba(255,255,255,.4);}

/* ============ RECENT SCANS ============ */
.scans__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-m);margin-bottom:var(--space-l);}
.scans-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,1.4vw,2rem);}
.scan{position:relative;display:block;text-decoration:none;}
.scan .film{display:block;padding:2.2rem 1rem;}
.scan .film::before,.scan .film::after{top:auto;bottom:auto;left:6px;right:6px;width:auto;height:8px;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.75) 0 7px,transparent 7px 18px);}
.scan .film::before{top:6px;}
.scan .film::after{bottom:6px;}
.scan img{aspect-ratio:1/1;object-fit:cover;width:100%;}
.scan__cap{display:flex;align-items:center;gap:.6rem;margin-top:.8rem;font-size:1.25rem;color:rgba(255,255,255,.55);transition:color .2s;}
.scan:hover .scan__cap{color:var(--tertiary);}

/* ============ ESCANEOS · POSTS DE INSTAGRAM ============ */
.igp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,1.4vw,2rem);}
.igp{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:transform .3s,border-color .3s;}
.igp:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.3);}
.igp__top{display:flex;align-items:center;gap:.9rem;padding:1rem 1.2rem;}
.igp__ava{width:28px;height:28px;border-radius:50%;background:#000;border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;}
.igp__ava img{width:70%;height:auto;}
.igp__user{font-size:1.25rem;font-weight:600;}
.igp__glyph{margin-left:auto;color:rgba(255,255,255,.5);display:flex;}
.igp__photo{display:block;}
.igp__photo img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:opacity .25s;}
.igp__photo:hover img{opacity:.85;}
.igp__actions{display:flex;gap:1.2rem;padding:1rem 1.2rem .4rem;color:rgba(255,255,255,.85);}
.igp__meta{display:flex;flex-direction:column;gap:.3rem;padding:0 1.2rem 1.3rem;font-size:1.2rem;color:rgba(255,255,255,.75);line-height:1.45;}
.igp__meta b{color:#fff;font-weight:600;}


/* ============ NEWSLETTER (opt-in) ============ */
.optin{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2.4rem,4vw,6rem);align-items:center;}
.optin__head{display:flex;align-items:center;gap:2.6rem;text-align:left;}
.optin__star{height:clamp(8rem,9vw,12rem);width:auto;flex-shrink:0;filter:drop-shadow(0 10px 30px rgba(0,0,0,.7));transform:rotate(-6deg);}
.optin__title{font-size:clamp(2.6rem,3vw,3.8rem);margin-bottom:0;line-height:1.12;}
.optin__sub{font-size:1.35rem;color:rgba(255,255,255,.55);margin-top:1.2rem;margin-bottom:0;}
.optin__form{display:flex;gap:1rem;}
@media(max-width:900px){
  .optin{grid-template-columns:1fr;gap:2.6rem;}
  .optin__head{gap:1.8rem;}
  .optin__star{height:7.6rem;}
}
.optin__form input{flex:1;background:#0d0d0d;border:1px solid rgba(255,255,255,.22);border-radius:4px;color:#fff;font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.45rem;padding:1.2rem 1.5rem;min-width:0;}
.optin__form input::placeholder{color:rgba(255,255,255,.35);}
.optin__form input:focus{outline:none;border-color:var(--tertiary);}
.optin__form button{font-family:'Roboto Mono',ui-monospace,monospace;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.28);border-radius:4px;font-size:1.8rem;padding:0 1.8rem;cursor:pointer;transition:background .25s,border-color .25s;}
.optin__form button:hover{background:var(--tertiary);border-color:var(--tertiary);}

/* ============ CONTACTO ============ */
.ct-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:var(--space-l);align-items:stretch;}
.ct-block{margin-bottom:var(--space-m);}
.ct-k{font-size:1.15rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--tertiary);margin-bottom:.4rem;}
.ct-v{font-size:var(--text-s);color:rgba(255,255,255,.85);}
.ct-v a{text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25);}
.ct-map{width:100%;height:100%;min-height:340px;border:0;border-radius:var(--radius-m);filter:grayscale(.3) invert(.92) hue-rotate(180deg) contrast(.9);}

/* ============ FOOTER ============ */
footer{border-top:1px solid var(--line);padding-block:var(--space-l);}
.foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-m);flex-wrap:wrap;}
.foot img{height:52px;width:auto;opacity:.9;}
.foot__links{display:flex;flex-wrap:wrap;gap:.4rem 2.2rem;}
.foot__links a{text-decoration:none;color:inherit;}
.foot__links a:hover{color:var(--tertiary);}
.foot small{font-size:1.2rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45);}
.foot a{color:rgba(255,255,255,.7);text-decoration:none;font-size:var(--text-s);}
.foot a:hover{color:var(--tertiary);}

/* ============ RESPONSIVE ============ */
@media(max-width:1080px){
  .shop-grid{grid-auto-columns:calc((100% - 2*1.2rem)/3);}
  .mission .inner{grid-template-columns:1fr;}
  .mflash{display:none;}
}
@media(max-width:900px){
  .hero .inner{grid-template-columns:1fr;min-height:0;}
  .pad{padding-block:5rem;}
  /* móvil · foto de fondo inset + texto encima (como desktop, altura contenida) */
  .fbhero{min-height:0;display:flex;align-items:center;}
  .fbhero__bg{inset:1rem 1rem 0;border-radius:12px;}
  .fbhero__bg::after{background:rgba(0,0,0,.78);}
  .fbhero__bg img{filter:brightness(1.05);}
  .fbhero .inner{display:flex;flex-direction:column;justify-content:center;min-height:min(56vh,520px);padding:5.4rem 3.4rem;}
  .fbhero .cta-row .btn:not(.btn--solid){background:rgba(8,8,8,.72);border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
  .fbhero__body{display:flex;flex-direction:column;gap:3rem;}
  .fbhero h1{line-height:1.12;margin-bottom:0;}
  .fbhero p{line-height:1.65;color:rgba(255,255,255,.75);}
  .fbhero .cta-row{margin-top:.4rem;}
  .fbhero h1{margin-bottom:0;}
  .fbhero p{margin-bottom:0;}
  .fbhero .cta-row{flex-direction:column;align-items:stretch;gap:1rem;}
  .fbhero .cta-row .btn{text-align:center;justify-content:center;}
  .drc{grid-template-columns:1fr;}
  .drc__photo{min-height:280px;}
  .reel-wrap{height:420px;}
  .ct-grid{grid-template-columns:1fr;}
  .offer-grid--3,.offer-grid--2{grid-template-columns:1fr;}
  .offer--wide{flex-direction:column;}
  .offer--wide .offer__photo{width:100%;aspect-ratio:4/3;}
  .scans-grid{grid-template-columns:repeat(2,1fr);}
  .igp-grid{grid-template-columns:repeat(2,1fr);}
  .quotes{columns:1;}
  .nav ul{display:none;}
  .brand{display:none;}
  .burger{display:inline-flex;flex-direction:column;justify-content:center;}
}
@media(max-width:620px){
  .igp-grid{grid-template-columns:1fr;}
  .shop-grid{grid-auto-columns:calc((100% - 1.2rem)/2);}
  .reviews__head{align-items:flex-start;}
}
@media(prefers-reduced-motion:reduce){
  .reel,.reel--down{animation:none;}
}

/* ============ SERVICIOS · LISTA ============ */
.v1{max-width:940px;}
.v1__row{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:1.6rem;padding:2rem 0;border-top:1px solid var(--line);}
.v1__row:first-child{border-top:0;}
.v1__idx{font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.3rem;color:var(--tertiary);}
.v1__name{font-family:Rubik,sans-serif;font-weight:600;font-size:var(--text-l);}
.v1__spec{font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.25rem;letter-spacing:.02em;color:rgba(255,255,255,.42);margin-top:.4rem;}
.v1__price{font-family:Rubik,sans-serif;font-weight:600;font-size:var(--text-xl);white-space:nowrap;}


/* ============ DARKROOM · foto + precios ============ */
.drc{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-l);align-items:stretch;}
.drc__photo{position:relative;border-radius:4px;overflow:hidden;border:1px solid var(--line);min-height:420px;}
.drc__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:contrast(1.03);}
.drc__list{display:flex;flex-direction:column;justify-content:center;}
.drc__row{display:flex;align-items:baseline;justify-content:space-between;gap:1.6rem;padding:1.55rem 0;border-top:1px solid var(--line);}
.drc__row:first-child{border-top:0;}
.drc__name{font-family:Rubik,sans-serif;font-weight:600;font-size:var(--text-l);}
.drc__price{font-family:Rubik,sans-serif;font-weight:600;font-size:var(--text-l);white-space:nowrap;}
.drc__specline{font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.2rem;letter-spacing:.04em;color:rgba(255,255,255,.45);margin-top:.9rem;margin-bottom:1.1rem;}
@media(max-width:900px){.drc{grid-template-columns:1fr;}.drc__photo{min-height:280px;}}

/* ============ FULL-PAGE GRAIN (one continuous, seamless layer) ============ */
body{position:relative;}
#page-grain{position:absolute;top:0;left:0;width:100%;z-index:0;pointer-events:none;background:#000;}
#page-grain canvas{display:block;width:100%;height:100%;}
body > header, body > main, body > footer{position:relative;z-index:1;}

/* ============ BANDA FOTO · full-bleed con el mismo inset que el hero ============ */
.photoband{padding:0 1.2rem;}
.photoband img{display:block;width:100%;height:clamp(30rem,42vw,56rem);object-fit:cover;object-position:center 50%;border-radius:12px;}
@media(max-width:900px){
  .photoband{padding:0 1rem;}
  .photoband img{height:clamp(24rem,58vw,34rem);}
}

/* ============ HERO · vídeo full-bleed, texto centrado ============ */
.vhero{position:relative;min-height:86vh;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.vhero__vid{position:absolute;inset:1.2rem 1.2rem 0;width:calc(100% - 2.4rem);height:calc(100% - 1.2rem);object-fit:cover;border-radius:12px;}
.vhero__scrim{position:absolute;inset:1.2rem 1.2rem 0;border-radius:12px;background:linear-gradient(rgba(0,0,0,.34),rgba(0,0,0,.34)),linear-gradient(180deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,.24) 42%,rgba(0,0,0,.5) 100%);}
.vhero .vhero__body{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2.8rem;padding-block:9rem;min-height:0;grid-template-columns:none;}
.vhero__kick{font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.3rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.92);}
.vhero h1{font-size:clamp(3rem,4.3vw,5.4rem);line-height:1.18;max-width:36ch;margin-bottom:0;letter-spacing:-.005em;}
.vhero .cta-row{display:flex;gap:1.2rem;flex-wrap:wrap;justify-content:center;margin-top:.6rem;}
@media(max-width:900px){
  .vhero{min-height:74vh;}
  .vhero__vid,.vhero__scrim{inset:1rem 1rem 0;}
  .vhero__vid{width:calc(100% - 2rem);height:calc(100% - 1rem);}
  /* jerarquía móvil: kicker pegado al titular, aire antes de los botones */
  .vhero .vhero__body{padding-block:7rem;gap:1.4rem;}
  .vhero__kick{font-size:1.05rem;letter-spacing:.26em;color:rgba(255,255,255,.72);}
  .vhero h1{font-size:2.9rem;line-height:1.22;max-width:20ch;}
  .vhero .cta-row{margin-top:2rem;}
  .vhero .cta-row{flex-direction:column;align-items:stretch;width:100%;max-width:34rem;gap:1rem;}
  .vhero .cta-row .btn{justify-content:center;text-align:center;}
}

/* ---- carrusel en móvil: una tarjeta por pantalla, flechas debajo y a la derecha ---- */
@media(max-width:620px){
  .shop-grid,.offer-grid#shopTrack{grid-auto-columns:100%;}
  /* tienda de la home: las flechas bajan del encabezado a debajo del carrusel */
  #tienda .inner{display:flex;flex-direction:column;}
  #tienda .shop-grid{order:1;}
  #tienda .shop-head{order:2;margin:1.6rem 0 0;}
  #tienda .sec-cta{order:3;}
  .shop-nav{gap:1rem;}
  /* carrusel de talleres: las flechas dejan de flotar sobre la tarjeta */
  .carousel{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem;}
  .carousel #shopTrack{order:1;flex:0 0 100%;}
  .carousel .shop-arrow{position:static;transform:none;order:2;box-shadow:none;}
  .carousel .shop-arrow:hover{transform:none;background:var(--tertiary);}
  .carousel .shop-arrow--prev{margin-left:auto;}
  .shop-arrow{width:4.8rem;height:4.8rem;font-size:1.8rem;}
}

/* ---- fecha de la próxima sesión en la tarjeta de taller ---- */
.offer__photo{display:block;}
/* "Próximamente" va SOBRE la foto (como el chip ISO de la tienda) para que los
   títulos de todas las tarjetas queden alineados, lleven badge o no. */
.offer__fecha{position:absolute;top:1rem;left:1rem;font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.05rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--tertiary);border:1px solid var(--tertiary);border-radius:3px;padding:.4rem .8rem;}
.offer__pronto{position:absolute;top:1rem;left:1rem;font-family:'Roboto Mono',ui-monospace,monospace;font-size:1.05rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.72);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.28);border-radius:3px;padding:.4rem .8rem;}

/* Los 4 carretes ya no van en carrusel: son cuatro y caben. Rejilla estática,
   misma medida y mismo hueco que .shop-grid tenía por tarjeta, para que las
   tarjetas se vean igual. Se cae a 2 y a 1 columna en los mismos cortes que el
   resto de la portada. */
/* Un poco más pequeña: la rejilla no llega al ancho completo de .inner.
   Alineada a la izquierda como el resto de la portada, no centrada. */
.film-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,1vw,1.5rem);max-width:112rem;}
@media(max-width:900px){ .film-grid{grid-template-columns:repeat(2,1fr);} }
/* Se mantienen DOS columnas en móvil. A una sola, cada carrete ocupaba 357 px
   de ancho y 471 de alto en un iPhone, y la sección entera 2.014 px: había
   que hacer cuatro scrolls para pasar cuatro productos. Además la foto del
   Gold 200 mide 300 px de origen, así que a pantalla completa se ampliaba
   un 18 % y se veía blanda; a dos columnas se pinta por debajo de su tamaño
   natural y queda nítida. */

/* Aviso del boletín. role="status" lo anuncia solo al aparecer, sin robar el
   foco: quien acaba de pulsar enviar se entera sin que le muevan la página. */
.optin__msg{font-size:1.35rem;line-height:1.5;margin-top:1.2rem;margin-bottom:0;}
.optin__msg--ok{color:rgba(255,255,255,.8);}
.optin__msg--err{color:var(--tertiary);}
.optin__legal{font-size:1.2rem;line-height:1.5;color:rgba(255,255,255,.42);margin-top:1rem;margin-bottom:0;}
.optin__legal a{color:rgba(255,255,255,.68);text-decoration:underline;text-underline-offset:2px;}
