.agroday-app{
  --navy:#102a43;
  --blue:#164f86;
  --red:#cf2b2a;
  --green:#5c9303;
  --muted:#607284;
  min-height:100vh;
  padding:34px 16px;
  display:grid;
  place-items:center;
  background:#f3f7f9;
  color:var(--navy);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.agroday-app *{box-sizing:border-box}
.agroday-card{
  width:min(760px,100%);
  padding:34px;
  border-radius:24px;
  background:rgba(255,255,255,.94);
  box-shadow:0 24px 70px rgba(16,42,67,.22);
}
.agroday-card h1{margin:0;text-align:center;font-size:clamp(31px,5vw,43px);font-weight:900}
.agroday-event-logo{display:block;width:min(280px,72%);max-height:110px;margin:12px auto 20px;object-fit:contain}
.agroday-eyebrow{margin:0;text-align:center;color:var(--red);font-size:22px;font-weight:900}
.agroday-intro{margin:12px auto 28px;text-align:center;color:var(--green);font-size:18px;font-weight:750}
.agroday-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.agroday-grid label{display:grid;gap:7px;font-size:14px;font-weight:850}
.agroday-grid .full{grid-column:1/-1}
.agroday-grid input{
  width:100%;
  min-height:56px;
  border:1px solid #c8d5de;
  border-radius:12px;
  padding:12px 14px;
  color:var(--navy);
  font:inherit;
  background:#fff;
}
.agroday-policy{display:flex;gap:12px;align-items:flex-start;margin:24px 0 20px;color:#435466;line-height:1.45}
.agroday-policy input{width:22px;height:22px;margin-top:2px;accent-color:var(--red);flex:0 0 auto}
.agroday-policy a{color:#5b2a86;font-weight:800}
.agroday-card button[type=submit]{
  width:100%;
  min-height:60px;
  border:0;
  border-radius:12px;
  background:var(--red);
  color:#fff;
  font:inherit;
  font-size:25px;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(207,43,42,.24);
}
.agroday-card button[disabled]{opacity:.7;cursor:progress}
.agroday-feedback{min-height:24px;margin:14px 0 0;text-align:center;font-weight:800}
.agroday-feedback.ok{color:#13804f}.agroday-feedback.error{color:#b42318}.agroday-feedback.info{color:var(--blue)}
.agroday-partners{display:flex;align-items:center;justify-content:center;gap:70px;margin-top:34px;padding-top:28px;border-top:1px solid #dce5eb}
.agroday-partners img:first-child{width:220px;max-width:52%}
.agroday-partners img:last-child{width:125px;max-width:32%}
.agroday-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(7,17,28,.54);
}
.agroday-modal[hidden]{display:none}
.agroday-modal-card{
  position:relative;
  width:min(520px,100%);
  padding:30px;
  border-radius:18px;
  background:#fff;
  box-shadow:0 24px 80px rgba(0,0,0,.35);
}
.agroday-modal-card button{
  position:absolute;
  top:10px;
  right:10px;
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  background:var(--red);
  color:#fff;
  font-size:22px;
  line-height:1;
}
.agroday-modal-card h2{margin:0 0 10px;color:var(--navy)}
.agroday-modal-card p{margin:0;color:#435466;font-size:16px;line-height:1.5}
.agroday-thanks{text-align:center}
.event-details{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:28px 0 0;
  text-align:left;
}
.event-detail{
  margin:0;
  padding:17px 18px;
  border:1px solid #d9e8f0;
  border-radius:13px;
  background:#f7fbfd;
}
.event-detail.location-detail{grid-column:1/-1}
.event-detail dt{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 1px;
  color:var(--red);
  font-size:20px;
  font-weight:600;
}
.event-detail dt svg{
  width:34px;
  height:34px;
  fill:none;
  stroke:var(--red);
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex:0 0 auto;
}
.event-detail dd{
  margin:0 0 0 43px;
  color:#405466;
  font-size:15px;
  line-height:1.5;
}
.event-detail dd strong{color:var(--navy)}
.maps-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:12px;
  padding:8px 14px;
  border:2px solid var(--red);
  border-radius:8px;
  color:var(--red);
  background:#fff;
  font-size:13px;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  transition:background .18s,color .18s,transform .18s;
}
.maps-btn:hover{color:#fff;background:var(--red);transform:translateY(-1px)}
.calendar-card{
  margin:32px 0 22px;
  padding:24px;
  border-radius:16px;
  background:#f4f9fc;
  border:1px solid #d9e8f0;
}
.calendar-card h2{margin:0 0 5px;font-size:22px;color:var(--navy)}
.calendar-card p{margin:0 0 18px;color:var(--muted);font-size:14px}
.calendar-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.calendar-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:46px;
  padding:10px;
  border-radius:10px;
  box-shadow:none;
  gap:8px;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
  transition:transform .18s,box-shadow .18s,opacity .18s;
}
.calendar-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(22,79,134,.28);
}
.calendar-brand-icon{width:21px;height:21px;flex:0 0 auto;display:block}
.calendar-btn.google{border:2px solid #0b57d0;background:#0b57d0;color:#ffffff}
.calendar-btn.outlook{border:2px solid #164f86;background:#fff;color:#164f86}
.calendar-btn.apple{border:2px solid #24292f;background:#24292f;color:#fff}
@media (max-width:640px){
  .agroday-app{padding:18px 10px}
  .agroday-card{padding:26px 18px;border-radius:20px}
  .agroday-grid{grid-template-columns:1fr}
  .agroday-partners{gap:32px}
  .event-details{grid-template-columns:1fr}
  .event-detail.location-detail{grid-column:auto}
  .calendar-actions{grid-template-columns:1fr}
  .agroday-card button[type=submit]{font-size:21px}
}
