/* Homepage hero only. Existing header and menu sections keep their own styles. */
.hero-redesign.hero-section {
  background:#FFFFFF;
  padding-block:24px 32px;
  overflow:clip;
}
.hero-redesign .hero-grid {
  grid-template-columns:minmax(0,1.3fr) minmax(360px,.85fr);
  align-items:center;
  gap:clamp(32px,4vw,80px);
}
.hero-redesign .hero-copy {
  position:relative;
  isolation:isolate;
  min-width:0;
  padding-block:132px 150px;
}
.hero-redesign .hero-copy>:not(.hero-food-stage) { position:relative; z-index:1; }
.hero-redesign .hero-copy h1 {
  max-width:none;
  margin:0 0 24px;
  font-size:clamp(56px,4.1vw,60px);
  line-height:1.08;
  letter-spacing:-.035em;
  font-weight:750;
  color:#111111;
}
.hero-redesign .hero-heading-line { display:block; white-space:nowrap; }
.hero-redesign .hero-copy h1 em {
  color:#DA291C;
  font-style:normal;
  white-space:nowrap;
}
.hero-redesign .hero-copy>p {
  max-width:75ch;
  width:100%;
  margin:0 0 26px;
  font-size:16px;
  line-height:1.85;
  color:#4B4B4B;
}
.hero-redesign .hero-copy .wp-block-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 24px;
}
.hero-redesign .hero-copy .wp-block-button__link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:14px 24px;
  border:2px solid #DA291C;
  border-radius:8px;
  background:#DA291C;
  color:#FFFFFF;
  font-size:16px!important;
  font-weight:700;
  line-height:1.25;
  text-decoration:none;
  transition:background-color .18s ease,transform .18s ease;
}
.hero-redesign .hero-copy .wp-block-button__link:hover {
  background:#BB2116;
  transform:translateY(-2px);
}
.hero-redesign .hero-copy .is-style-outline .wp-block-button__link {
  background:#FFC72C!important;
  color:#111111!important;
  border:2px solid #FFC72C!important;
}
.hero-redesign .hero-copy .is-style-outline .wp-block-button__link:hover {
  background:#F2B914!important;
}
.hero-redesign .hero-badges {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  list-style:none;
  padding:0;
  margin:0;
}
.hero-redesign .hero-badges li {
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px 11px;
  border:1px solid #E8E8E8;
  border-radius:6px;
  color:#353535;
  background:#FFFFFF;
  font-size:11px;
  line-height:1.4;
  font-weight:600;
}
.hero-redesign .hero-badges li::before {
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:#DA291C;
  flex-shrink:0;
}
.hero-redesign .hero-food-stage {
  position:absolute;
  inset:0;
  z-index:0;
  margin:0;
  pointer-events:none;
  user-select:none;
}
.hero-redesign .hero-food {
  position:absolute;
  display:block;
  max-width:none;
  min-width:0;
  object-fit:contain;
  pointer-events:none;
}
.hero-redesign .hero-food-burger { top:-8px; left:1%; width:106px; height:106px; transform:rotate(-12deg); object-view-box:inset(9.875% 25%); }
.hero-redesign .hero-food-shake { top:18px; left:61%; width:102px; height:102px; transform:rotate(11deg); object-view-box:inset(9.875% 34.167%); }
.hero-redesign .hero-food-nuggets { bottom:16px; left:7%; width:110px; height:108px; transform:rotate(7deg); object-view-box:inset(9.875% 18.833% 9.875% 18.667%); }
.hero-redesign .hero-food-fries { bottom:42px; right:19%; width:100px; height:102px; transform:rotate(-13deg); object-view-box:inset(9.875% 31.5% 9.875% 31.333%); }
.hero-redesign .hero-food-quarter { bottom:-12px; left:41%; width:108px; height:104px; transform:rotate(-6deg); object-view-box:inset(9.875% 20.5%); }
.hero-redesign .hero-food-mcflurry { bottom:150px; right:3%; width:104px; height:104px; transform:rotate(9deg); object-view-box:inset(9.875% 27.833%); }
.hero-redesign .hero-tool { position:relative; isolation:isolate; z-index:2; min-width:0; scroll-margin-top:24px; }
.hero-redesign .cm-lookup {
  position:relative;
  padding:28px 30px 24px;
  border-radius:22px;
  border:3px solid transparent;
  background:linear-gradient(#FFFFFF,#FFFFFF) padding-box,
    linear-gradient(135deg,#DA291C,#FFC72C) border-box;
  box-shadow:0 12px 36px #11111110;
}
.hero-redesign .cm-lookup-title { display:block; padding-bottom:14px; border-bottom:1px solid #EAEAEA; }
.hero-redesign .cm-lookup h2 {
  font-size:clamp(28px,2.4vw,36px);
  line-height:1.15;
  letter-spacing:-.025em;
  color:#111111;
  margin:0;
}
.hero-redesign .cm-lookup>p {
  font-size:14px;
  line-height:1.65;
  color:#5C5C5C;
  margin:12px 0 22px;
}
.hero-redesign .cm-fields { grid-template-columns:1fr; gap:16px; }
.hero-redesign .cm-fields label { gap:10px; }
.hero-redesign .cm-step-label {
  display:flex;
  align-items:center;
  gap:9px;
  font-size:14px;
  font-weight:650;
  color:#111111;
}
.hero-redesign .cm-step {
  display:inline-grid;
  place-items:center;
  width:25px;
  height:25px;
  flex:0 0 25px;
  border-radius:50%;
  background:#FFC72C;
  color:#111111;
  font-size:12px;
  font-weight:700;
}
.hero-redesign .cm-item-field { grid-column:auto; }
.hero-redesign .cm-lookup:not([data-category-chosen=true]) .cm-item-field .cm-step {
  background:#EFEFEF;
  color:#5C5C5C;
}
.hero-redesign .cm-fields select,.hero-redesign .cm-fields input {
  min-height:52px;
  padding:13px 14px;
  border:1px solid #CCCCCC;
  background:#FFFFFF;
  color:#111111;
  font-size:14px;
  font-weight:500;
  line-height:1.4;
}
.hero-redesign .cm-fields select {
  appearance:none;
  -webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='m1 1 5 5 5-5' stroke='%23111111' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 16px center;
  background-size:12px 8px;
  padding-right:44px;
  pointer-events:auto;
  cursor:pointer;
}
.hero-redesign .cm-fields select:disabled {
  border-style:solid;
  border-color:#E7E7E7;
  background:#F7F7F7;
  color:#686868;
  opacity:1;
  cursor:not-allowed;
}
.hero-redesign .cm-lookup-search { margin:9px 0 0; }
.hero-redesign .cm-lookup-search summary {
  width:fit-content;
  color:#5C5C5C;
  font-size:12px;
  font-weight:500;
  cursor:pointer;
  padding:4px 0;
}
.hero-redesign .cm-lookup-search[open] summary { margin-bottom:6px; }
.hero-redesign .cm-result {
  display:grid;
  grid-template-columns:minmax(120px,.85fr) minmax(0,1.15fr);
  gap:12px 18px;
  align-items:center;
  padding:18px;
  margin-top:20px;
  min-height:180px;
  background:#FFF8E5;
  border:1px solid #EDDEB5;
  border-radius:12px;
}
.hero-redesign .cm-result[data-state=empty] { grid-template-columns:1fr; background:#FAFAFA; border-color:#E8E8E8; }
.hero-redesign .cm-result-empty { text-align:center; max-width:32ch; margin:auto; }
.hero-redesign .cm-tool-icon { display:block; width:44px; height:44px; margin:0 auto 10px; object-fit:contain; }
.hero-redesign .cm-result h3 {
  font-size:23px;
  font-weight:650;
  line-height:1.2;
  color:#111111;
  margin:0 0 12px;
}
.hero-redesign .cm-result-empty h3 { font-size:22px; margin-bottom:8px; }
.hero-redesign .cm-result-empty p {
  margin:0;
  color:#686868;
  font-size:13px;
  line-height:1.65;
}
.hero-redesign .cm-result-image {
  position:relative;
  width:100%;
  height:142px;
  float:none;
  margin:0;
  padding:12px;
  border-radius:10px;
  background:#FFFFFF;
  display:grid;
  place-items:center;
  overflow:visible;
}
.hero-redesign .cm-result-image img {
  position:absolute;
  top:12px;
  left:12px;
  display:block;
  width:calc(100% - 24px);
  height:calc(100% - 24px);
  max-width:calc(100% - 24px);
  max-height:calc(100% - 24px);
  object-fit:contain;
  object-position:center;
  transform:none;
}
.hero-redesign .cm-result-details { min-width:0; }
.hero-redesign .cm-result-values { gap:12px; }
.hero-redesign .cm-result-values div:last-child { grid-column:auto; }
.hero-redesign .cm-result-values dt { font-size:11px; margin-bottom:5px; color:#5C5C5C; }
.hero-redesign .cm-result-values dd { font-size:25px; font-weight:750; color:#111111; }
.hero-redesign .cm-result-values div:first-child dd { color:#DA291C; }
.hero-redesign .cm-result-values .cm-missing { white-space:normal; font-size:13px; line-height:1.4; }
.hero-redesign .cm-result-links {
  grid-column:1/-1;
  margin:0;
  padding-top:12px;
  border-top:1px solid #E9DFBF;
  font-size:12px;
  font-weight:600;
}
.hero-redesign .cm-result-links a:last-child { margin-left:0; }
.hero-redesign .cm-review-note { grid-column:1/-1; margin:0; font-size:11px; }
.hero-redesign .cm-lookup .cm-lookup-note { font-size:11px; line-height:1.65; margin:16px 0 0; }
@media(min-width:1350px) {
  .hero-redesign .hero-food-mcflurry { top:160px; right:-8px; bottom:auto; }
}
@media(min-width:1025px) and (max-width:1250px) {
  .hero-redesign .hero-grid { grid-template-columns:minmax(0,1.35fr) minmax(340px,.85fr); gap:28px; }
  .hero-redesign .hero-copy h1 { font-size:56px; }
  .hero-redesign .cm-lookup { padding:24px; }
  .hero-redesign .cm-result { padding:18px; grid-template-columns:minmax(100px,.85fr) minmax(0,1.15fr); gap:12px; }
  .hero-redesign .hero-food-fries { bottom:30px; }
  .hero-redesign .cm-result-values dd { font-size:22px; }
  .hero-redesign .cm-result-values { grid-template-columns:1fr; }
}
@media(max-width:1024px) {
  .hero-redesign.hero-section { padding-block:24px 40px; }
  .hero-redesign .hero-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .hero-redesign .hero-copy { max-width:720px; width:100%; margin-inline:auto; padding-block:132px 150px; }
  .hero-redesign .hero-copy h1 { font-size:clamp(44px,6vw,56px); }
  .hero-redesign .hero-copy>p { max-width:75ch; }
  .hero-redesign .hero-tool { max-width:720px; width:100%; margin-inline:auto; }
  .hero-redesign .hero-food-nuggets,.hero-redesign .hero-food-quarter { display:none; }
  .hero-redesign .hero-food-mcflurry { right:5%; }
}
@media(min-width:601px) and (max-width:700px) {
  .hero-redesign .hero-copy { padding-bottom:24px; }
  .hero-redesign .hero-food-fries,.hero-redesign .hero-food-mcflurry { display:none; }
}
@media(max-width:600px) {
  .hero-redesign.hero-section { padding-block:16px 32px; }
  .hero-redesign .hero-copy { padding-block:110px 0; }
  .hero-redesign .hero-copy h1 { font-size:clamp(34px,8.3vw,46px); margin-bottom:20px; }
  .hero-redesign .hero-heading-line { white-space:normal; }
  .hero-redesign .hero-copy>p { font-size:16px; line-height:1.85; margin-bottom:22px; }
  .hero-redesign .hero-copy .wp-block-buttons { display:flex; gap:10px; margin:0 0 20px; }
  .hero-redesign .hero-copy .wp-block-button__link { font-size:14px!important; min-height:48px; padding:12px 14px; }
  .hero-redesign .hero-badges { gap:6px; }
  .hero-redesign .hero-badges li { font-size:10px; padding:6px 8px; gap:5px; }
  .hero-redesign .hero-food-burger { top:0; left:2%; width:86px; height:86px; }
  .hero-redesign .hero-food-shake { top:16px; left:auto; right:7%; width:84px; height:84px; }
  .hero-redesign .hero-food-fries,.hero-redesign .hero-food-mcflurry { display:none; }
  .hero-redesign .cm-lookup { padding:24px 20px; }
  .hero-redesign .cm-lookup h2 { font-size:30px; }
  .hero-redesign .cm-lookup>p { font-size:13px; margin-bottom:24px; }
  .hero-redesign .cm-result { padding:16px 12px; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:12px; min-height:180px; }
  .hero-redesign .cm-result[data-state=selected] { grid-template-columns:minmax(0,1fr); }
  .hero-redesign .cm-result h3 { font-size:21px; }
  .hero-redesign .cm-result-image { height:100px; }
  .hero-redesign .cm-result-values { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .hero-redesign .cm-result-values dd { font-size:22px; }
}
@media(max-width:380px) {
  .hero-redesign .hero-copy .wp-block-buttons { flex-direction:column; align-items:stretch; }
  .hero-redesign .hero-copy .wp-block-button__link { width:100%; }
  .hero-redesign .hero-badges li { padding:6px; }
  .hero-redesign .cm-lookup { padding-inline:16px; }
  .hero-redesign .cm-result[data-state=selected] { grid-template-columns:minmax(0,1fr); }
  .hero-redesign .cm-result[data-state=selected] .cm-result-image { height:100px; }
  .hero-redesign .cm-result[data-state=selected] .cm-result-image img { max-width:100%; }
  .hero-redesign .cm-result-values { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(prefers-reduced-motion:reduce) {
  .hero-redesign .hero-copy .wp-block-button__link { transition:none; }
  .hero-redesign .hero-copy .wp-block-button__link:hover { transform:none; }
}
