/* DynoraFit — guía de proteína. Hoja externa para que funcione con CSP sin inline styles. */
.protein-page{width:min(1120px,calc(100% - 40px));max-width:1120px;margin:0 auto;padding:34px 0 90px;box-sizing:border-box}
.protein-page *{box-sizing:border-box}
.protein-hero{position:relative;isolation:isolate;min-height:430px;display:flex;align-items:center;overflow:hidden;border-radius:19px;margin-bottom:32px;background:#e6e5d8}
.protein-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}
.protein-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(248,244,233,.98) 0%,rgba(248,244,233,.95) 32%,rgba(248,244,233,.73) 49%,rgba(248,244,233,.05) 80%)}
.protein-hero-content{width:min(660px,68%);padding:45px clamp(24px,5vw,64px)}
.protein-page h1{font-size:clamp(38px,5vw,66px);line-height:1.09;letter-spacing:-.045em;margin:14px 0 18px;color:#163d2e}
.protein-page h1 em{font-family:Georgia,serif;font-weight:400}
.protein-page h2{font-size:clamp(24px,2.7vw,33px);line-height:1.2;color:#193e30;margin:0 0 17px}
.protein-page h3{font-size:19px;color:#214a37;margin:18px 0 8px}
.protein-page p,.protein-page li{line-height:1.75}
.protein-page .lead{font-size:17px;max-width:580px;color:#3d5847}
.protein-kicker{font-size:12px;letter-spacing:.12em;font-weight:800;color:#45694c}
.protein-hero-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.protein-hero-chips a{background:#fffdf4df;border:1px solid #e0e2d5;border-radius:30px;padding:10px 14px;color:#214c37;font-size:12px;font-weight:800;text-decoration:none}
.protein-card{background:#fffef9;border:1px solid #dbe2d5;border-radius:18px;padding:clamp(22px,3.5vw,38px);margin:22px 0;box-shadow:0 9px 28px rgba(27,64,43,.045)}
.protein-quick{background:#edf0e6}
.protein-calculator{background:#f3f5ed}
.protein-form{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,1fr);align-items:end;gap:16px;margin:22px 0}
.protein-form label{display:flex;flex-direction:column;gap:9px;font-weight:800;color:#234d38}
.protein-form input{width:100%;border:1px solid #aebba9;border-radius:9px;padding:14px;font-size:17px;background:white;color:#173a2d}
.protein-form button{background:#1b503a;color:#fff;border:0;border-radius:9px;padding:16px;font-weight:800;cursor:pointer;min-height:52px}
.protein-form button:hover{background:#123d2a}
.protein-form button:focus-visible,.protein-form input:focus-visible{outline:3px solid #c69b52;outline-offset:2px}
.protein-result{background:#e3ebdc;border-radius:13px;padding:24px;text-align:center}
.protein-result p{margin:6px 0}
.protein-number{font-size:clamp(29px,4vw,43px);font-weight:850;color:#174832;line-height:1.2!important}
.protein-muted,.protein-notice{font-size:13px;color:#5b6f60}
.protein-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.protein-columns>div{background:#f5f4ec;border:1px solid #e0e3d7;border-radius:13px;padding:20px}
.protein-table{width:100%;border-collapse:collapse}
.protein-table th,.protein-table td{border-bottom:1px solid #dce2d7;padding:13px 10px;text-align:left}
.protein-table th{color:#214b37}
.protein-faq details{border-bottom:1px solid #d7dfd3;padding:18px 0}
.protein-faq summary{font-weight:800;color:#214a37;cursor:pointer}
.protein-faq details p{margin:12px 0 0}
.protein-related a,.protein-page section a:not(.button){color:#18583c}
.protein-page ul{padding-left:22px}
@media(max-width:700px){.protein-page{width:calc(100% - 28px);padding:16px 0 65px}.protein-hero{min-height:470px;align-items:flex-end}.protein-hero:before{background:linear-gradient(0deg,rgba(248,244,233,.99) 0%,rgba(248,244,233,.95) 36%,rgba(248,244,233,.08) 90%)}.protein-hero-content{width:100%;padding:24px}.protein-hero-photo{object-position:center top}.protein-page h1{font-size:clamp(35px,9vw,50px)}.protein-form,.protein-columns{grid-template-columns:1fr}.protein-card{padding:21px}.protein-table th,.protein-table td{font-size:13px}}

/* Menú de proteína calculado por peso y actividad */
.protein-form{grid-template-columns:repeat(2,minmax(0,1fr))}
.protein-form select{width:100%;min-height:53px;border:1px solid #aebba9;border-radius:9px;padding:13px;background:#fff;color:#173a2d;font-size:15px}
.protein-form button{grid-column:1/-1}
.protein-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}
.protein-meal{border:1px solid #dbe2d5;background:#f5f6ef;border-radius:13px;padding:19px}
.protein-meal h3{margin:0 0 10px}
.protein-meal ul{margin:0;padding-left:20px;font-size:14px}
.protein-meal-total{font-weight:800;color:#214a37;font-size:14px}
.protein-menu-summary{background:#e7efdf;border-radius:12px;padding:18px;font-weight:800;color:#214a37}
.protein-table-scroll{overflow-x:auto}
@media(max-width:700px){.protein-form,.protein-menu-grid{grid-template-columns:1fr}.protein-form button{grid-column:auto}}
