.configurator{max-width:none;background:#fffdf8}.configurator>.section-heading,.plan-picker,.menu-builder{max-width:1320px;margin-left:auto;margin-right:auto}.plan-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}.plan-option{border:2px solid var(--line);background:white;border-radius:22px;padding:24px;text-align:left;display:grid;grid-template-columns:auto 1fr auto;gap:4px 14px;align-items:center;color:var(--ink);transition:.2s}.plan-option>span{font-size:2.1rem;grid-row:1/4}.plan-option strong{font-size:1.2rem}.plan-option small{color:var(--muted)}.plan-option b{grid-column:3;grid-row:1/4;font-size:1.35rem}.plan-option:hover,.plan-option.selected{border-color:var(--teal);background:#f6f9df;transform:translateY(-2px);box-shadow:var(--shadow)}
.menu-builder{margin-top:70px}.builder-top{display:flex;align-items:end;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding-bottom:30px}.builder-top h3{font-family:Fraunces,serif;font-size:2.4rem;margin:0}.quota-summary{display:flex;gap:10px}.quota-summary>div{min-width:105px;background:#f3eee5;border-radius:14px;padding:10px 12px;display:flex;flex-direction:column}.quota-summary span{font-size:.72rem;color:var(--muted)}.quota-summary strong{font-size:1.1rem}.quota-summary .done{background:#eef4cf;color:#667b0e}.builder-step{padding:50px 0;border-bottom:1px solid var(--line);transition:.25s}.builder-step.locked{opacity:.38;filter:grayscale(.25);pointer-events:none}.step-heading{display:flex;gap:17px;align-items:center;margin-bottom:25px}.step-heading>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--orange);font-family:Fraunces,serif;font-weight:800;font-size:1.2rem}.step-heading h3{font-family:Fraunces,serif;font-size:2rem;margin:0}.step-heading p{margin:2px 0 0;color:var(--muted)}.protein-filters{display:flex;gap:8px;overflow:auto;margin-bottom:20px}.protein-filters button{border:1px solid var(--line);background:white;border-radius:99px;padding:9px 17px;text-transform:capitalize;color:var(--muted);font-weight:700}.protein-filters button.active{background:var(--deep);border-color:var(--deep);color:white}
.food-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.food-card{border:1px solid var(--line);background:white;border-radius:18px;overflow:hidden;min-width:0;transition:.2s}.food-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.food-photo,.details-image{background-repeat:no-repeat;background-size:200% 200%;background-color:var(--cream)}.food-photo{height:180px}.atlas-protein{background-image:url('menu-proteinas.png')}.atlas-side{background-image:url('menu-acompanamientos.png')}.pos-tl{background-position:0 0}.pos-tr{background-position:100% 0}.pos-bl{background-position:0 100%}.pos-br{background-position:100% 100%}.food-card-body{padding:17px;position:relative}.food-card-body>small{text-transform:capitalize;color:var(--orange);font-weight:800;font-size:.72rem}.food-card h4{font-family:Fraunces,serif;font-size:1.35rem;line-height:1.08;margin:4px 0 7px}.food-card-body>p{color:var(--muted);margin:0;font-weight:700}.details-link{border:0;background:none;color:var(--teal);font-weight:800;padding:9px 0;text-decoration:underline}.portion-control{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-top:7px}.portion-control button{height:38px;border:0;background:#f5f0e8;color:var(--ink);font-size:1.2rem}.portion-control button:disabled{opacity:.35;cursor:not-allowed}.portion-control strong{text-align:center}.extra-price{display:block;color:var(--orange);font-size:.78rem;font-weight:800;margin-top:8px}.extras-step{border-bottom:0}.extras-step .step-heading>span{background:var(--yellow)}
.cart-plan{background:#f2f6d6;border-radius:14px;padding:16px;display:flex;flex-direction:column;margin-bottom:18px}.cart-plan small{color:var(--teal);font-weight:800}.cart-plan strong{font-size:1.2rem}.cart-plan span{color:var(--muted)}.cart-group{padding:10px 0;border-bottom:1px solid var(--line)}.cart-group h3{font-size:.82rem;text-transform:uppercase;color:var(--orange);margin:0 0 8px}.cart-group ul{list-style:none;margin:0;padding:0}.cart-group li{display:flex;justify-content:space-between;gap:15px;padding:4px 0}.cart-group b{color:var(--teal)}
.details-modal{position:fixed;inset:0;background:rgba(54,33,22,.68);z-index:80;display:grid;place-items:center;padding:20px}.details-modal[hidden]{display:none}.details-dialog{background:var(--paper);width:min(540px,100%);max-height:90vh;overflow:auto;border-radius:24px;padding:25px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.25)}.details-dialog>button{position:absolute;right:14px;top:14px;width:40px;height:40px;border:0;border-radius:50%;background:white;font-size:1.5rem;z-index:2}.details-image{height:280px;border-radius:15px;margin-bottom:22px}.details-dialog .eyebrow{margin-bottom:7px;text-transform:uppercase}.details-dialog h2{font-size:2.5rem}.details-dialog>p:not(.eyebrow){color:var(--muted);line-height:1.65}.details-dialog dl{margin:20px 0 0}.details-dialog dl div{padding:12px 0;border-top:1px solid var(--line)}.details-dialog dt{font-size:.75rem;text-transform:uppercase;color:var(--orange);font-weight:800}.details-dialog dd{margin:3px 0 0}
@media(max-width:1000px){.food-grid{grid-template-columns:repeat(2,1fr)}.builder-top{display:block}.quota-summary{margin-top:20px;overflow:auto}.plan-picker{grid-template-columns:1fr}.plan-option{grid-template-columns:auto 1fr auto}}
@media(max-width:600px){.configurator{padding-left:16px;padding-right:16px}.food-grid{grid-template-columns:1fr 1fr;gap:10px}.food-photo{height:130px}.food-card-body{padding:13px}.food-card h4{font-size:1.1rem}.quota-summary>div{min-width:95px}.builder-top h3{font-size:2rem}.details-image{height:220px}}
@media(max-width:390px){.food-grid{grid-template-columns:1fr}.food-photo{height:190px}}
.custom-photo{background-size:cover!important;background-position:center!important}
.seasonal-hero{min-height:390px;background:var(--deep);color:white;display:grid;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:30px;padding:34px clamp(20px,6vw,88px);align-items:center}.seasonal-copy{max-width:560px}.seasonal-copy .eyebrow{margin-bottom:10px}.seasonal-copy h1{font-size:clamp(2.6rem,4.5vw,4.7rem)}.seasonal-copy>p:not(.eyebrow){color:#f6eadb;max-width:510px}.seasonal-controls{display:flex;align-items:center;gap:12px;margin-top:22px}.seasonal-controls>button{border:1px solid rgba(255,255,255,.35);background:transparent;color:white;width:42px;height:42px;border-radius:50%;font-size:1.2rem}.seasonal-controls>button:hover{background:var(--orange);color:var(--deep)}#season-dots{display:flex;gap:7px}#season-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.35)}#season-dots button.active{background:var(--yellow);width:26px;border-radius:10px}.seasonal-track{position:relative;min-height:320px}.seasonal-slide{position:absolute;inset:0;display:grid;grid-template-columns:1.2fr .8fr;background:#fffdf8;color:var(--ink);border-radius:24px;overflow:hidden;opacity:0;transform:translateX(18px);pointer-events:none;transition:.4s}.seasonal-slide.active{opacity:1;transform:none;pointer-events:auto}.seasonal-slide img{width:100%;height:100%;object-fit:cover}.seasonal-slide>div{padding:28px 24px;align-self:end}.seasonal-slide small{color:var(--orange);font-weight:800;font-size:.72rem}.seasonal-slide h2{font-size:2rem;margin:7px 0}.seasonal-slide p{color:var(--muted);margin:0}@media(max-width:850px){.seasonal-hero{grid-template-columns:1fr}.seasonal-track{min-height:350px}}@media(max-width:560px){.seasonal-hero{padding-top:45px}.seasonal-slide{grid-template-columns:1fr}.seasonal-slide img{height:215px}.seasonal-slide>div{padding:18px}.seasonal-track{min-height:390px}}
.seasonal-hero{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);overflow:hidden}.seasonal-copy,.seasonal-track,.seasonal-slide,.seasonal-slide>div{min-width:0}.seasonal-track{width:100%;min-height:340px}.seasonal-slide{grid-template-columns:minmax(0,1.15fr) minmax(185px,.85fr)}.seasonal-slide>div{align-self:center}.seasonal-slide h2{font-size:clamp(1.55rem,2.3vw,2rem);overflow-wrap:anywhere}.seasonal-slide p{line-height:1.45}@media(max-width:1100px) and (min-width:851px){.seasonal-hero{grid-template-columns:minmax(310px,.8fr) minmax(0,1.2fr);gap:22px;padding:34px 28px}.seasonal-copy h1{font-size:clamp(2.5rem,4.6vw,3.65rem)}.seasonal-slide{grid-template-columns:minmax(0,1.25fr) minmax(170px,.75fr)}.seasonal-slide>div{padding:22px 18px}.seasonal-slide h2{font-size:1.55rem}}
.confirm-strip{background:var(--deep);color:white;padding:55px clamp(24px,8vw,118px);display:flex;align-items:center;justify-content:space-between;gap:35px}.confirm-strip .eyebrow{margin-bottom:8px}.confirm-strip h2{font-size:clamp(2.4rem,4vw,4rem)}.confirm-strip p:not(.eyebrow){color:#f5eadc;margin-bottom:0}.confirm-strip button{border:0;border-radius:99px;background:var(--orange);color:var(--deep);padding:16px 22px;font-weight:800;min-width:230px;display:flex;justify-content:space-between;align-items:center}.confirm-strip button:disabled{opacity:.38;cursor:not-allowed}.confirm-strip button:not(:disabled):hover{transform:translateY(-2px)}
@media(max-width:700px){.confirm-strip{align-items:flex-start;flex-direction:column}.confirm-strip button{width:100%}}
