/* Bloque editorial de caminos: estilos limitados a «¿Qué necesitás hoy?». */
.need-today{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(54px,5vw,72px) 0;
  background:#fcfaf7 url('/img/need-today-background.webp') center / 100% 100% no-repeat;
  border-top:1px solid rgba(86,73,67,.07);
}
.need-today + .intro{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  margin-top:-2px;
  padding-top:112px;
  background:linear-gradient(180deg,#fcf9f3 0%,var(--paper) 62%);
}
.need-today + .intro .wrap{position:relative;z-index:1}
.intro-bridge{
  position:absolute;
  z-index:0;
  top:-1px;
  display:block;
  height:auto;
  pointer-events:none;
}
.intro-bridge--left{left:0;width:20vw}
.intro-bridge--right{right:0;width:26vw}
.intro-bridge-shape--mobile{display:none}
.need-today .wrap{max-width:1080px}
.need-today-heading{
  margin:0 auto clamp(28px,3vw,38px);
  text-align:center;
}
.need-today-heading h2{
  font-family:var(--serif);
  font-size:clamp(2.8rem,4.8vw,4.2rem);
  font-weight:600;
  line-height:.98;
  letter-spacing:-.045em;
  color:var(--ink);
}
.need-today-heading p{
  margin-top:12px;
  font-size:clamp(.95rem,1.35vw,1.08rem);
  line-height:1.6;
  color:var(--muted);
}
.need-today-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(16px,1.7vw,22px);
}
.need-today-option{
  display:flex;
  align-items:center;
  gap:clamp(15px,1.7vw,22px);
  min-width:0;
  min-height:148px;
  padding:clamp(19px,2vw,25px);
  border:1px solid rgba(105,83,67,.095);
  border-radius:25px;
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(255,252,249,.92));
  box-shadow:0 16px 36px rgba(68,54,45,.12),0 4px 12px rgba(68,54,45,.065);
  color:var(--ink);
  text-decoration:none;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.need-today-option:hover{
  transform:translateY(-3px);
  border-color:rgba(105,83,67,.17);
  box-shadow:0 22px 44px rgba(68,54,45,.16),0 6px 14px rgba(68,54,45,.085);
}
.need-today-option:focus-visible{
  outline:2px solid var(--coral);
  outline-offset:5px;
}
.need-today-icon{
  position:relative;
  display:grid;
  place-items:center;
  width:60px;height:60px;flex:0 0 60px;
  overflow:hidden;
  border:1px solid rgba(113,132,49,.1);
  border-radius:50%;
  background:radial-gradient(circle at 34% 24%,#fcfde9 0%,#f4f6d2 44%,#eaf0b9 100%);
  box-shadow:inset 0 2px 4px rgba(255,255,255,.9),inset 0 -5px 9px rgba(128,148,53,.085),0 6px 12px rgba(97,101,56,.075);
  color:#628044;
}
.need-today-icon::before{
  position:absolute;
  top:6px;left:12px;width:36px;height:14px;
  border-radius:50%;
  background:rgba(255,255,255,.58);
  filter:blur(3px);
  content:"";
}
.need-today-icon i{
  position:relative;
  z-index:1;
  font-size:1.4rem;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.45));
}
.need-today-option:nth-child(even) .need-today-icon{
  border-color:rgba(198,89,77,.085);
  background:radial-gradient(circle at 34% 24%,#fff5f1 0%,#fce9e2 45%,#f8dcd3 100%);
  box-shadow:inset 0 2px 4px rgba(255,255,255,.9),inset 0 -5px 9px rgba(192,101,89,.07),0 6px 12px rgba(137,77,67,.07);
  color:#cf6252;
}
.need-today-copy{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  gap:5px;
  min-width:0;
}
.need-today-copy strong{
  font-family:var(--serif);
  font-size:clamp(1.45rem,2vw,1.7rem);
  font-weight:600;
  line-height:1.05;
  letter-spacing:-.025em;
}
.need-today-copy > span{
  max-width:43ch;
  font-size:clamp(.9rem,1.05vw,.98rem);
  line-height:1.55;
  color:var(--muted);
}
.need-today-arrow{
  display:grid;
  place-items:center;
  width:36px;height:36px;flex:0 0 36px;
  margin-left:auto;
  border-radius:50%;
  background:#faeee9;
  color:var(--coral);
  font-size:.84rem;
  transition:transform .25s ease,background-color .25s ease;
}
.need-today-option:hover .need-today-arrow{
  transform:translateX(3px);
  background:#f9e5de;
}
@media(max-width:900px){
  .need-today{
    background-image:url('/img/need-today-background-mobile.webp');
  }
  .need-today-grid{
    grid-template-columns:minmax(0,1fr);
    max-width:700px;
    margin-inline:auto;
  }
  .intro-bridge--left{width:63.3vw;height:clamp(175px,22vw,210px)}
  .intro-bridge--right{width:72.3vw;height:clamp(190px,25vw,230px)}
  .intro-bridge-shape--desktop{display:none}
  .intro-bridge-shape--mobile{display:block}
  .intro-bridge-blush-stop{stop-color:#fdefe4}
  .intro-bridge-sage-stop{stop-color:#f3f1e0}
}
@media(max-width:560px){
  .need-today{padding:52px 0 60px}
  .need-today-heading{margin-bottom:28px}
  .need-today-heading h2{font-size:clamp(2.4rem,9vw,3rem)}
  .need-today-grid{gap:13px}
  .need-today-option{
    gap:12px;
    min-height:136px;
    padding:16px 14px;
    border-radius:22px;
  }
  .need-today-icon{width:50px;height:50px;flex-basis:50px}
  .need-today-icon::before{top:5px;left:10px;width:30px;height:12px}
  .need-today-icon i{font-size:1.2rem}
  .need-today-copy strong{font-size:1.4rem}
  .need-today-copy > span{font-size:.86rem;line-height:1.5}
  .need-today-arrow{width:32px;height:32px;flex-basis:32px;font-size:.75rem}
  .intro-bridge--left{height:175px}
  .intro-bridge--right{height:190px}
}
@media(min-width:561px) and (max-width:900px){
  .intro-bridge--left g{transform:scaleX(.68);transform-origin:0 0}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .need-today-option,.need-today-arrow{transition:none}
  .need-today-option:hover,.need-today-option:hover .need-today-arrow{transform:none}
}
