.elementor-104483 .elementor-element.elementor-element-40e6e11{--display:flex;}.elementor-104483 .elementor-element.elementor-element-40e6e11.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-104483 .elementor-element.elementor-element-40e6e11{--width:75.717%;}}/* Start custom CSS for html, class: .elementor-element-fc89269 *//*
PÁGINA: Cómo calcular porciones para un Baby Shower
SLUG: porciones-comida-baby-shower
VERSIÓN: 2.0 · UX, CALCULADORA Y CATÁLOGO REAL
TIPOGRAFÍA: Plus Jakarta Sans con fallbacks
ENCAPSULADO: .tbs-portions-page
COMPATIBILIDAD: WordPress + Elementor
DEPENDENCIAS VISUALES: ninguna
*/

.tbs-portions-page {
  --tbs-primary:#f2679a;
  --tbs-primary-dark:#dc4f85;
  --tbs-secondary:#8174d0;
  --tbs-secondary-dark:#6658b4;
  --tbs-accent:#c99b61;
  --tbs-green:#5d927d;
  --tbs-ink:#403a4b;
  --tbs-ink-strong:#292532;
  --tbs-text:#655f6d;
  --tbs-muted:#8b8495;
  --tbs-paper:#fffdf9;
  --tbs-surface:#fff;
  --tbs-pink-soft:#fff5f8;
  --tbs-lilac-soft:#f3efff;
  --tbs-cream-soft:#fffaf5;
  --tbs-green-soft:#f2faf7;
  --tbs-line:rgba(62,54,89,.10);
  --tbs-line-soft:rgba(62,54,89,.075);
  --tbs-shadow-soft:0 12px 30px rgba(67,50,92,.075);
  --tbs-shadow:0 20px 48px rgba(67,50,92,.12);
  --tbs-shadow-large:0 31px 72px rgba(75,52,91,.19);
  --tbs-font:"Plus Jakarta Sans","Avenir Next","Segoe UI",Arial,sans-serif;

  position:relative!important;
  left:50%!important;
  isolation:isolate;
  width:100vw!important;
  max-width:100vw!important;
  min-width:0;
  margin:0 0 0 -50vw!important;
  padding:0;
  overflow-x:clip;
  color:var(--tbs-ink);
  background:var(--tbs-paper);
  font-family:var(--tbs-font);
  font-size:16px;
  font-weight:500;
  letter-spacing:-.012em;
  line-height:1.68;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

@supports(width:100dvw){
  .tbs-portions-page{width:100dvw!important;max-width:100dvw!important;margin-left:-50dvw!important}
}

.tbs-portions-page,
.tbs-portions-page *,
.tbs-portions-page *::before,
.tbs-portions-page *::after{
  box-sizing:border-box;
  min-width:0;
}

.tbs-portions-page a{
  color:inherit;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent;
}

.tbs-portions-page img,
.tbs-portions-page svg{
  display:block;
  max-width:100%;
}

.tbs-portions-page img{
  width:100%;
  height:auto;
}

.tbs-portions-page figure,
.tbs-portions-page h1,
.tbs-portions-page h2,
.tbs-portions-page h3,
.tbs-portions-page p,
.tbs-portions-page ul,
.tbs-portions-page ol,
.tbs-portions-page dl,
.tbs-portions-page dd{
  margin-top:0;
}

.tbs-portions-page figure{
  margin-right:0;
  margin-left:0;
}

.tbs-portions-page ul,
.tbs-portions-page ol{
  padding-left:0;
}

.tbs-portions-page h1,
.tbs-portions-page h2,
.tbs-portions-page h3{
  color:var(--tbs-ink-strong);
  font-family:var(--tbs-font);
  font-weight:700;
  letter-spacing:-.048em;
  line-height:1.06;
  text-wrap:balance;
}

.tbs-portions-page h1 em,
.tbs-portions-page h2 em{
  color:var(--tbs-primary);
  font-style:normal;
  font-weight:700;
}

.tbs-portions-page p,
.tbs-portions-page li,
.tbs-portions-page dd,
.tbs-portions-page figcaption{
  color:var(--tbs-text);
  font-weight:500;
  letter-spacing:-.01em;
  line-height:1.7;
  text-wrap:pretty;
}

.tbs-portions-page :focus{outline:none}
.tbs-portions-page :focus-visible{outline:3px solid rgba(102,88,180,.46);outline-offset:4px}

.tbs-portions-sprite{
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
}

.tbs-portions-container{
  width:min(calc(100% - 28px),1380px);
  max-width:1380px;
  margin:auto;
}

.tbs-portions-skip-link{
  position:fixed;
  top:-100px;
  left:12px;
  z-index:999999;
  min-height:44px;
  padding:11px 16px;
  border-radius:12px;
  color:#fff;
  background:var(--tbs-ink-strong);
  font:800 13px var(--tbs-font);
}

.tbs-portions-skip-link:focus{top:12px}

/* Navegación */
.tbs-portions-pillar-nav-section{
  position:relative;
  z-index:50;
  width:100%;
  padding:17px 0;
  border-top:1px solid rgba(72,57,92,.06);
  border-bottom:1px solid rgba(72,57,92,.10);
  background:linear-gradient(90deg,rgba(255,255,255,.99),rgba(255,253,255,.98) 50%,rgba(252,248,255,.99));
  box-shadow:0 10px 30px rgba(58,43,78,.055),inset 0 1px 0 rgba(255,255,255,.95);
}

.tbs-portions-pillar-nav__inner{
  width:100%;
  padding-inline:clamp(12px,2.8vw,58px);
}

.tbs-portions-pillar-nav{
  display:grid;
  grid-template-columns:minmax(150px,1.12fr) minmax(158px,1.17fr) repeat(8,minmax(88px,.82fr)) minmax(158px,1.12fr);
  align-items:center;
  gap:9px;
  width:100%;
}

.tbs-portions-pillar-nav__link{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:56px;
  padding:10px 11px;
  overflow:hidden;
  border:1px solid rgba(70,57,87,.12);
  border-radius:999px;
  color:#4b4457;
  background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(253,251,255,.96));
  box-shadow:0 7px 18px rgba(57,43,76,.045),inset 0 1px 0 rgba(255,255,255,.98);
  font:750 clamp(10px,.72vw,12.5px)/1.2 var(--tbs-font);
  letter-spacing:-.025em;
  text-align:center;
  white-space:nowrap;
  transition:.22s ease;
}

.tbs-portions-pillar-nav__link::after{
  content:"";
  position:absolute;
  right:18%;
  bottom:7px;
  left:18%;
  height:2px;
  border-radius:999px;
  opacity:0;
  background:linear-gradient(90deg,transparent,var(--tbs-secondary),transparent);
  transform:scaleX(.35);
}

.tbs-portions-pillar-nav__link--home{gap:9px}

.tbs-portions-pillar-nav__dot{
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  background:var(--tbs-primary);
  box-shadow:0 0 0 5px rgba(242,103,154,.11);
}

.tbs-portions-pillar-nav__link.is-current,
.tbs-portions-pillar-nav__link[aria-current="page"]{
  color:#fff;
  border-color:rgba(103,88,183,.44);
  background:radial-gradient(circle at 16% 12%,rgba(255,255,255,.19),transparent 31%),linear-gradient(135deg,#7063c5,#8174d0);
  box-shadow:0 14px 30px rgba(91,75,164,.25),inset 0 1px 0 rgba(255,255,255,.22);
}

.tbs-portions-pillar-nav__link.is-current::after,
.tbs-portions-pillar-nav__link[aria-current="page"]::after,
.tbs-portions-pillar-nav__link--cta::after{
  display:none;
}

.tbs-portions-pillar-nav__link--cta{
  justify-content:space-between;
  padding-right:10px;
  padding-left:20px;
  color:#fff!important;
  background:radial-gradient(circle at 10% 10%,rgba(255,255,255,.19),transparent 32%),linear-gradient(116deg,#d7448e,#bc4aa0 45%,#735ac4);
  box-shadow:0 14px 31px rgba(166,67,153,.25);
}

.tbs-portions-pillar-nav__cta-arrow{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  flex:0 0 36px;
  border-radius:50%;
  color:var(--tbs-secondary-dark);
  background:#fff;
  font:700 15px Arial;
}

/* Compartidos */
.tbs-portions-section{
  width:100%;
  padding:82px 0;
  scroll-margin-top:100px;
}

.tbs-portions-kicker,
.tbs-portions-card-label,
.tbs-portions-eyebrow{
  color:var(--tbs-secondary);
  font:700 10.5px/1.45 var(--tbs-font);
  letter-spacing:.105em;
  text-transform:uppercase;
}

.tbs-portions-kicker{margin-bottom:13px}
.tbs-portions-kicker--light{color:rgba(255,255,255,.84)}
.tbs-portions-card-label{margin-bottom:10px;color:#8174b6;font-size:9px}

.tbs-portions-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  width:fit-content;
  margin-bottom:0;
}

.tbs-portions-eyebrow>span{
  color:var(--tbs-primary);
  font-size:17px;
  line-height:1;
}

.tbs-portions-section-head{
  width:100%;
  max-width:930px;
  margin:0 auto 42px;
  text-align:center;
}

.tbs-portions-section-head h2{
  max-width:17ch;
  margin:0 auto;
  font-size:clamp(34px,8.7vw,47px);
}

.tbs-portions-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:11px;
}

.tbs-portions-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:0 22px;
  border:1px solid transparent;
  border-radius:999px;
  font:700 13.5px/1.2 var(--tbs-font);
  text-align:center;
  transition:.24s ease;
}

.tbs-portions-button svg,
.tbs-portions-related__grid>a>svg{
  width:18px;
  height:18px;
  flex:0 0 18px;
}

.tbs-portions-button--primary{
  color:#fff!important;
  background:linear-gradient(135deg,#dc4f85,#c54e9b 44%,#6658b4);
  box-shadow:0 14px 30px rgba(115,69,150,.24);
}

.tbs-portions-button--secondary{
  color:var(--tbs-ink-strong);
  border-color:rgba(57,47,69,.14);
  background:rgba(255,255,255,.90);
  box-shadow:0 10px 23px rgba(61,47,82,.07);
}

.tbs-portions-button--light{
  color:var(--tbs-ink-strong)!important;
  background:#fff;
  box-shadow:0 15px 34px rgba(31,22,48,.20);
}

.tbs-portions-button--ghost{
  color:#fff!important;
  border-color:rgba(255,255,255,.40);
  background:rgba(255,255,255,.10);
}

.tbs-portions-icon{
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  border:1px solid rgba(102,88,180,.12);
  border-radius:16px;
  color:var(--tbs-primary-dark);
  background:linear-gradient(145deg,#ffe7ef,#f0ebff);
}

.tbs-portions-icon svg{
  width:23px;
  height:23px;
}

.tbs-portions-check-list{
  display:grid;
  gap:10px;
  margin:0 0 25px;
  list-style:none;
}

.tbs-portions-check-list li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:12px;
  font-weight:700;
}

.tbs-portions-check-list svg{
  width:17px;
  height:17px;
  flex:0 0 17px;
  margin-top:1px;
  color:var(--tbs-primary-dark);
}

/* Hero */
.tbs-portions-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:680px;
  padding:44px 0 64px;
  background:
    radial-gradient(circle at 3% 5%,rgba(242,103,154,.085),transparent 26rem),
    radial-gradient(circle at 93% 88%,rgba(129,116,208,.09),transparent 26rem),
    linear-gradient(135deg,#fff9f4,#fff7fa 56%,#f7f3ff);
}

.tbs-portions-hero::before{
  content:"";
  position:absolute;
  top:34px;
  right:4%;
  z-index:-1;
  width:145px;
  height:145px;
  opacity:.42;
  background-image:radial-gradient(rgba(242,103,154,.48) 1px,transparent 1.3px);
  background-size:17px 17px;
  transform:rotate(-10deg);
}

.tbs-portions-hero__grid{
  display:grid;
  grid-template-columns:1fr;
  align-items:center;
  gap:clamp(36px,5vw,78px);
}

.tbs-portions-hero__copy{
  width:100%;
  max-width:735px;
}

.tbs-portions-breadcrumbs{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin-bottom:28px;
  color:#81798c;
  font-size:11px;
  font-weight:600;
}

.tbs-portions-breadcrumbs a:hover{color:var(--tbs-secondary-dark)}

.tbs-portions-hero h1{
  max-width:13ch;
  margin:18px 0 23px;
  font-size:clamp(42px,10.5vw,58px);
  letter-spacing:-.05em;
  line-height:1.01;
}

.tbs-portions-hero__lead{
  max-width:650px;
  margin-bottom:28px;
  font-size:15.5px;
  line-height:1.72;
}

.tbs-portions-hero__proof{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:28px 0 0;
  list-style:none;
}

.tbs-portions-hero__proof li{
  padding:14px 12px;
  border:1px solid rgba(73,59,94,.10);
  border-radius:16px;
  background:rgba(255,255,255,.68);
  box-shadow:0 8px 20px rgba(59,46,77,.045);
}

.tbs-portions-hero__proof span,
.tbs-portions-hero__proof strong{display:block}

.tbs-portions-hero__proof span{
  margin-bottom:3px;
  color:var(--tbs-primary-dark);
  font-size:10px;
  font-weight:800;
}

.tbs-portions-hero__proof strong{
  color:var(--tbs-ink-strong);
  font-size:11px;
  font-weight:700;
}

.tbs-portions-hero__figure{
  width:100%;
  max-width:760px;
  justify-self:end;
  margin-bottom:0;
}

.tbs-portions-hero__image-wrap{
  position:relative;
  overflow:hidden;
  aspect-ratio:4/3;
  border:1px solid rgba(255,255,255,.82);
  border-radius:30px;
  background:#f4e9ee;
  box-shadow:var(--tbs-shadow-large);
}

.tbs-portions-hero__image-wrap::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 58%,rgba(39,28,50,.20));
}

.tbs-portions-hero__image-wrap img{
  height:100%;
  object-fit:cover;
}

.tbs-portions-hero__note{
  position:absolute;
  z-index:2;
  max-width:225px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.62);
  border-radius:15px;
  background:rgba(255,255,255,.93);
  box-shadow:0 12px 30px rgba(66,49,86,.10);
}

.tbs-portions-hero__note--top{
  top:14px;
  left:14px;
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--tbs-secondary-dark);
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
}

.tbs-portions-hero__note--top svg{
  width:18px;
  height:18px;
}

.tbs-portions-hero__note--bottom{
  right:13px;
  bottom:13px;
}

.tbs-portions-hero__note--bottom strong,
.tbs-portions-hero__note--bottom small{display:block}

.tbs-portions-hero__note--bottom strong{
  color:var(--tbs-ink-strong);
  font-size:14px;
}

.tbs-portions-hero__note--bottom small{
  color:var(--tbs-muted);
  font-size:10px;
}

.tbs-portions-hero__figure figcaption{
  margin-top:12px;
  color:var(--tbs-muted);
  font-size:10px;
  text-align:center;
}

/* Índice */
.tbs-portions-quick-nav{
  padding:22px 0 12px;
  border-bottom:1px solid var(--tbs-line-soft);
  background:linear-gradient(180deg,#fff9f4,#fffdf9);
}

.tbs-portions-index{
  display:flex;
  align-items:center;
  gap:8px;
  overflow-x:auto;
  padding:12px;
  border:1px solid var(--tbs-line);
  border-radius:18px;
  background:rgba(255,255,255,.96);
  box-shadow:0 9px 23px rgba(61,47,81,.055);
  scrollbar-width:none;
}

.tbs-portions-index::-webkit-scrollbar{display:none}

.tbs-portions-index strong,
.tbs-portions-index a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:1 0 max-content;
  min-height:42px;
  padding:0 13px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.tbs-portions-index strong{
  color:#fff;
  background:var(--tbs-secondary-dark);
}

.tbs-portions-index a{
  color:#595064;
  background:#f7f4fa;
}

/* Respuesta */
.tbs-portions-answer{background:var(--tbs-paper)}

.tbs-portions-answer__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:30px;
  align-items:center;
}

.tbs-portions-answer h2{
  max-width:14ch;
  margin-bottom:0;
  font-size:clamp(36px,8.7vw,52px);
}

.tbs-portions-answer__copy>p{
  margin-bottom:18px;
  font-size:16px;
  line-height:1.76;
}

.tbs-portions-answer__copy aside{
  display:grid;
  grid-template-columns:34px 1fr;
  gap:13px;
  padding:20px;
  border-left:4px solid var(--tbs-primary);
  border-radius:0 19px 19px 0;
  background:var(--tbs-pink-soft);
}

.tbs-portions-answer__copy aside svg{
  width:26px;
  height:26px;
  color:var(--tbs-primary-dark);
}

.tbs-portions-answer__copy aside strong{
  display:block;
  margin-bottom:5px;
  color:var(--tbs-ink-strong);
  font-size:14px;
}

.tbs-portions-answer__copy aside p{
  margin-bottom:0;
  font-size:11.5px;
}

/* Datos */
.tbs-portions-data{
  background:
    radial-gradient(circle at 8% 12%,rgba(242,103,154,.055),transparent 23rem),
    radial-gradient(circle at 93% 88%,rgba(129,116,208,.065),transparent 24rem),
    #f8f6fb;
}

.tbs-portions-data__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:15px;
}

.tbs-portions-data__grid article{
  min-height:315px;
  padding:27px 24px;
  border:1px solid var(--tbs-line);
  border-radius:24px;
  background:linear-gradient(145deg,#fff,#fcfaff);
  box-shadow:var(--tbs-shadow-soft);
}

.tbs-portions-data__grid article:nth-child(2){
  background:linear-gradient(145deg,#fff,#fff5f8);
}

.tbs-portions-data__grid article:nth-child(3){
  background:linear-gradient(145deg,#fff,#f4f0ff);
}

.tbs-portions-data__grid article:nth-child(4){
  background:linear-gradient(145deg,#fff,#fff9ef);
}

.tbs-portions-data__grid article:nth-child(5){
  background:linear-gradient(145deg,#fff,#f2faf7);
}

.tbs-portions-data__grid .tbs-portions-icon{
  margin-bottom:22px;
}

.tbs-portions-data__grid h3{
  margin-bottom:13px;
  font-size:clamp(25px,2vw,31px);
  line-height:1.08;
}

.tbs-portions-data__grid p:not(.tbs-portions-card-label){
  margin-bottom:0;
  font-size:13px;
}

/* Fórmula */
.tbs-portions-formula{
  background:linear-gradient(145deg,var(--tbs-pink-soft),var(--tbs-lilac-soft));
}

.tbs-portions-formula__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:15px;
}

.tbs-portions-formula__grid article{
  position:relative;
  min-height:275px;
  padding:26px 24px;
  overflow:hidden;
  border:1px solid var(--tbs-line);
  border-radius:23px;
  background:rgba(255,255,255,.94);
  box-shadow:var(--tbs-shadow-soft);
}

.tbs-portions-formula__grid article>span{
  display:grid;
  place-items:center;
  width:55px;
  height:55px;
  margin-bottom:23px;
  border-radius:18px;
  color:var(--tbs-primary-dark);
  background:linear-gradient(145deg,#ffe7ef,#f0ebff);
  font-size:13px;
  font-weight:800;
}

.tbs-portions-formula__grid small{
  display:block;
  margin-bottom:10px;
  color:var(--tbs-secondary);
  font-size:8px;
  font-weight:800;
  letter-spacing:.11em;
}

.tbs-portions-formula__grid strong{
  display:block;
  margin-bottom:12px;
  color:var(--tbs-ink-strong);
  font-size:21px;
  letter-spacing:-.035em;
  line-height:1.2;
}

.tbs-portions-formula__grid p{
  margin-bottom:0;
  font-size:11.5px;
}

.tbs-portions-variable-example{
  display:grid;
  grid-template-columns:1fr;
  gap:25px;
  margin-top:24px;
  padding:clamp(26px,4vw,42px);
  border:1px solid rgba(102,88,180,.14);
  border-radius:25px;
  background:#fff;
  box-shadow:var(--tbs-shadow-soft);
}

.tbs-portions-variable-example h3{
  max-width:16ch;
  margin-bottom:0;
  font-size:clamp(27px,3vw,38px);
}

.tbs-portions-variable-example dl{
  display:grid;
  grid-template-columns:1fr;
  gap:9px;
  margin-bottom:0;
}

.tbs-portions-variable-example dl>div{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:12px;
  align-items:center;
  padding:11px 13px;
  border:1px solid var(--tbs-line-soft);
  border-radius:15px;
  background:#fcfafd;
}

.tbs-portions-variable-example dt{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:12px;
  color:#fff;
  background:linear-gradient(145deg,var(--tbs-primary),var(--tbs-secondary));
  font-size:12px;
  font-weight:800;
}

.tbs-portions-variable-example dd{
  margin:0;
  font-size:11.5px;
}

/* Tabla premium */
.tbs-portions-sheet{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 12%,rgba(242,103,154,.055),transparent 24rem),
    radial-gradient(circle at 94% 88%,rgba(129,116,208,.065),transparent 26rem),
    linear-gradient(180deg,#fff 0%,#fcfafd 100%);
}

.tbs-portions-table-wrap{
  position:relative;
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  border:1px solid rgba(102,88,180,.14);
  border-radius:28px;
  background:#fff;
  box-shadow:0 24px 60px rgba(66,49,86,.11),0 8px 24px rgba(66,49,86,.055);
  scrollbar-width:thin;
  scrollbar-color:rgba(102,88,180,.30) rgba(243,239,255,.80);
  -webkit-overflow-scrolling:touch;
}

.tbs-portions-table-wrap::before{
  content:"";
  position:sticky;
  top:0;
  left:0;
  z-index:8;
  display:block;
  width:100%;
  height:5px;
  margin-bottom:-5px;
  pointer-events:none;
  background:linear-gradient(90deg,var(--tbs-primary),#d756a0 42%,var(--tbs-secondary));
}

.tbs-portions-table{
  width:100%;
  min-width:1260px;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
  color:var(--tbs-text);
  background:#fff;
  font-family:var(--tbs-font);
  font-size:13px;
}

.tbs-portions-table th,
.tbs-portions-table td{
  padding:23px 22px;
  border-right:1px solid var(--tbs-line-soft);
  border-bottom:1px solid var(--tbs-line-soft);
  text-align:left;
  vertical-align:middle;
  overflow-wrap:anywhere;
}

.tbs-portions-table th:last-child,
.tbs-portions-table td:last-child{border-right:0}

.tbs-portions-table tbody tr:last-child th,
.tbs-portions-table tbody tr:last-child td{border-bottom:0}

.tbs-portions-table thead th{
  padding-top:24px;
  padding-bottom:21px;
  color:#5a4f68;
  background:linear-gradient(180deg,#fff8fb,#faf6ff);
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.095em;
  line-height:1.35;
  text-transform:uppercase;
}

.tbs-portions-table thead th:nth-child(1){width:15%}
.tbs-portions-table thead th:nth-child(2){width:15%}
.tbs-portions-table thead th:nth-child(3){width:13%}
.tbs-portions-table thead th:nth-child(4){width:13%}
.tbs-portions-table thead th:nth-child(5){width:15%}
.tbs-portions-table thead th:nth-child(6){width:15%}
.tbs-portions-table thead th:nth-child(7){width:14%}

.tbs-portions-table tbody tr:nth-child(even){
  background:linear-gradient(90deg,rgba(255,249,252,.74),rgba(249,247,255,.72));
}

.tbs-portions-table tbody th{
  color:var(--tbs-ink-strong);
  background:radial-gradient(circle at 20% 18%,rgba(242,103,154,.10),transparent 7rem),linear-gradient(145deg,#fff9fb,#f8f4ff);
  font-size:14px;
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.35;
  text-align:center;
}

.tbs-portions-table tbody th::before{
  content:"";
  display:block;
  width:38px;
  height:4px;
  margin:0 auto 11px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--tbs-primary),var(--tbs-secondary));
}

.tbs-portions-table tbody td{
  color:#625b6d;
  font-size:12px;
  line-height:1.6;
  text-align:center;
}

.tbs-portions-table tbody td:last-child{
  text-align:left;
}

.tbs-portions-table-note{
  display:flex;
  align-items:center;
  justify-content:center;
  max-width:920px;
  min-height:48px;
  margin:18px auto 0;
  padding:12px 18px;
  border:1px solid rgba(102,88,180,.10);
  border-radius:999px;
  color:#7b7386;
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(248,245,255,.94));
  box-shadow:0 8px 22px rgba(66,49,86,.05);
  font-size:10.5px;
  font-weight:600;
  text-align:center;
}

/* Tipos */
.tbs-portions-types{
  background:var(--tbs-paper);
}

.tbs-portions-types__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}

.tbs-portions-types__grid article{
  min-height:250px;
  padding:25px 23px;
  border:1px solid var(--tbs-line);
  border-radius:23px;
  background:linear-gradient(145deg,#fff,#fcfaff);
  box-shadow:var(--tbs-shadow-soft);
}

.tbs-portions-types__grid article>span,
.tbs-portions-errors__grid article>span{
  display:block;
  margin-bottom:28px;
  color:var(--tbs-primary-dark);
  font-size:13px;
  font-weight:800;
}

.tbs-portions-types__grid h3,
.tbs-portions-errors__grid h3{
  margin-bottom:12px;
  font-size:24px;
}

.tbs-portions-types__grid p,
.tbs-portions-errors__grid p{
  margin-bottom:0;
  font-size:12px;
}

/* Ajustes */
.tbs-portions-adjustments{
  background:radial-gradient(circle at 5% 10%,rgba(242,103,154,.07),transparent 25rem),linear-gradient(145deg,#fff8fa,#fffdfb 62%,#f8f4ff);
}

.tbs-portions-adjustments__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:36px;
  align-items:center;
}

.tbs-portions-adjustments__figure img{
  aspect-ratio:4/3;
  border:1px solid rgba(255,255,255,.86);
  border-radius:28px;
  object-fit:cover;
  box-shadow:var(--tbs-shadow-large);
}

.tbs-portions-adjustments__figure figcaption{
  margin:12px auto 0;
  color:var(--tbs-muted);
  font-size:9.5px;
  text-align:center;
}

.tbs-portions-adjustments__copy h2{
  max-width:14ch;
  margin-bottom:18px;
  font-size:clamp(36px,8.2vw,50px);
}

.tbs-portions-adjustments__copy>p:not(.tbs-portions-kicker){
  margin-bottom:23px;
  font-size:15px;
  line-height:1.75;
}

/* Compras */
.tbs-portions-shopping{
  background:
    radial-gradient(circle at 8% 12%,rgba(242,103,154,.055),transparent 23rem),
    radial-gradient(circle at 93% 88%,rgba(129,116,208,.065),transparent 24rem),
    #f8f6fb;
}

.tbs-portions-shopping__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:15px;
}

.tbs-portions-shopping__grid article{
  min-height:285px;
  padding:26px 24px;
  border:1px solid var(--tbs-line);
  border-radius:23px;
  background:linear-gradient(145deg,#fff,#fcfaff);
  box-shadow:var(--tbs-shadow-soft);
}

.tbs-portions-shopping__grid .tbs-portions-icon{
  margin-bottom:24px;
}

.tbs-portions-shopping__grid h3{
  margin-bottom:13px;
  font-size:27px;
}

.tbs-portions-shopping__grid p{
  margin-bottom:0;
  font-size:12.5px;
}

/* Errores */
.tbs-portions-errors{
  background:var(--tbs-paper);
}

.tbs-portions-errors__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}

.tbs-portions-errors__grid article{
  min-height:230px;
  padding:25px 23px;
  border:1px solid rgba(220,79,133,.13);
  border-radius:23px;
  background:radial-gradient(circle at 100% 0,rgba(242,103,154,.08),transparent 12rem),linear-gradient(145deg,#fff,#fff8fb);
  box-shadow:var(--tbs-shadow-soft);
}

/* Checklist */
.tbs-portions-checklist{background:#faf8fc}

.tbs-portions-checklist-card{
  display:grid;
  grid-template-columns:1fr;
  overflow:hidden;
  border:1px solid rgba(102,88,180,.16);
  border-radius:30px;
  background:#fff;
  box-shadow:var(--tbs-shadow);
}

.tbs-portions-checklist-card__copy{
  padding:clamp(28px,4vw,50px);
}

.tbs-portions-checklist-card h2{
  max-width:14ch;
  margin-bottom:18px;
  font-size:clamp(36px,8.2vw,50px);
}

.tbs-portions-checklist-card__copy>p:not(.tbs-portions-kicker){
  margin-bottom:22px;
  font-size:15px;
  line-height:1.75;
}

.tbs-portions-registration-note{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:13px;
  margin:0 0 22px;
  padding:16px;
  border:1px solid rgba(82,153,125,.18);
  border-radius:18px;
  background:linear-gradient(145deg,#f5fcf8,#fff);
}

.tbs-portions-registration-note>span{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:14px;
  color:#fff;
  background:linear-gradient(145deg,#609d87,#4f8c77);
}

.tbs-portions-registration-note svg{
  width:20px;
  height:20px;
}

.tbs-portions-registration-note strong{
  display:block;
  margin-bottom:4px;
  color:#365846;
  font-size:13px;
}

.tbs-portions-registration-note p{
  margin-bottom:0;
  color:#5f6c64;
  font-size:11px;
}

.tbs-portions-checklist-card__figure{
  position:relative;
  margin-bottom:0;
  background:var(--tbs-lilac-soft);
}

.tbs-portions-checklist-card__figure::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 55%,rgba(42,31,59,.27));
}

.tbs-portions-checklist-card__figure img{
  height:100%;
  min-height:360px;
  object-fit:cover;
}

.tbs-portions-checklist-card__figure>span{
  position:absolute;
  top:18px;
  right:18px;
  z-index:2;
  padding:7px 12px;
  border:1px solid rgba(255,255,255,.56);
  border-radius:999px;
  color:#fff;
  background:rgba(62,48,81,.52);
  font-size:8px;
  font-weight:800;
  letter-spacing:.12em;
}

/* Producto */
.tbs-portions-product{background:var(--tbs-paper)}

.tbs-portions-product__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:36px;
  align-items:center;
}

.tbs-portions-product__visual{
  display:grid;
  place-items:center;
  min-height:430px;
  border:1px solid var(--tbs-line);
  border-radius:30px;
  background:radial-gradient(circle at 85% 15%,rgba(242,103,154,.15),transparent 15rem),linear-gradient(145deg,#fff9fb,#f3efff);
  box-shadow:var(--tbs-shadow-soft);
}

.tbs-portions-product__stack{
  position:relative;
  width:min(72%,370px);
  aspect-ratio:4/3;
}

.tbs-portions-product__stack>span,
.tbs-portions-product__stack>div{
  position:absolute;
  inset:0;
  border:1px solid rgba(102,88,180,.14);
  border-radius:24px;
}

.tbs-portions-product__stack .is-back{
  background:#ffeaf2;
  transform:rotate(-7deg) translate(-18px,8px);
}

.tbs-portions-product__stack .is-middle{
  background:#eee9ff;
  transform:rotate(5deg) translate(18px,6px);
}

.tbs-portions-product__stack .is-front{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:30px;
  background:linear-gradient(145deg,#df6b9b,#8174d0);
  box-shadow:0 26px 55px rgba(75,52,91,.22);
}

.tbs-portions-product__stack small{
  margin-bottom:7px;
  color:rgba(255,255,255,.74);
  font-size:8px;
  font-weight:800;
  letter-spacing:.13em;
}

.tbs-portions-product__stack strong{
  margin-bottom:7px;
  color:#fff;
  font-size:clamp(30px,4vw,48px);
  letter-spacing:-.045em;
  line-height:1;
}

.tbs-portions-product__stack p{
  margin-bottom:0;
  color:rgba(255,255,255,.78);
  font-size:11px;
}

.tbs-portions-product__copy h2{
  max-width:14ch;
  margin-bottom:18px;
  font-size:clamp(36px,8.2vw,50px);
}

.tbs-portions-product__copy>p:not(.tbs-portions-kicker){
  margin-bottom:22px;
  font-size:15px;
  line-height:1.75;
}

/* Integración y final */
.tbs-portions-integration{background:var(--tbs-paper)}

.tbs-portions-integration__inner,
.tbs-portions-final__inner{
  display:grid;
  grid-template-columns:1fr;
  gap:36px;
  overflow:hidden;
  padding:clamp(42px,6vw,76px);
  border-radius:35px;
  color:#fff;
  background:radial-gradient(circle at 91% 12%,rgba(255,255,255,.14),transparent 21rem),linear-gradient(118deg,#5d56a8,#8174c3 49%,#ed78aa);
  box-shadow:0 31px 70px rgba(67,45,101,.18);
}

.tbs-portions-integration h2,
.tbs-portions-final h2{
  max-width:14ch;
  margin-bottom:15px;
  color:#fff;
  font-size:clamp(36px,8.7vw,52px);
}

.tbs-portions-integration h2 em,
.tbs-portions-final h2 em{color:#ffd7e6}

.tbs-portions-integration p:not(.tbs-portions-kicker),
.tbs-portions-final p:not(.tbs-portions-kicker){
  max-width:700px;
  margin-bottom:25px;
  color:rgba(255,255,255,.82);
  font-size:14px;
}

.tbs-portions-integration__steps{
  display:grid;
  gap:10px;
  align-content:center;
}

.tbs-portions-integration__steps article{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:3px 12px;
  padding:15px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:17px;
  background:rgba(255,255,255,.10);
}

.tbs-portions-integration__steps span{
  grid-row:1/3;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:14px;
  color:var(--tbs-secondary-dark);
  background:#fff;
  font-size:10px;
  font-weight:800;
}

.tbs-portions-integration__steps strong{
  color:#fff;
  font-size:13px;
}

.tbs-portions-integration__steps small{
  color:rgba(255,255,255,.72);
  font-size:10px;
}

/* Relacionados */
.tbs-portions-related{
  background:
    radial-gradient(circle at 8% 12%,rgba(242,103,154,.055),transparent 23rem),
    radial-gradient(circle at 93% 88%,rgba(129,116,208,.065),transparent 24rem),
    #f8f6fb;
}

.tbs-portions-related__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:15px;
}

.tbs-portions-related__grid>a{
  display:grid;
  grid-template-columns:46px 1fr 18px;
  align-items:center;
  gap:4px 14px;
  min-height:145px;
  padding:22px;
  border:1px solid var(--tbs-line);
  border-radius:22px;
  background:rgba(255,255,255,.92);
  box-shadow:var(--tbs-shadow-soft);
}

.tbs-portions-related__grid>a>span{
  grid-row:1/3;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:15px;
  color:var(--tbs-primary-dark);
  background:linear-gradient(145deg,#ffe7ef,#f0ebff);
  font-size:11px;
  font-weight:800;
}

.tbs-portions-related__grid strong{
  color:var(--tbs-ink-strong);
  font-size:17px;
}

.tbs-portions-related__grid small{
  color:var(--tbs-muted);
  font-size:10.5px;
}

.tbs-portions-related__grid>a>svg{
  grid-column:3;
  grid-row:1/3;
  color:var(--tbs-secondary-dark);
}

/* FAQ */
.tbs-portions-faq{background:#f8f6fa}

.tbs-portions-faq__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:34px;
  align-items:start;
}

.tbs-portions-faq__intro h2{
  margin-bottom:16px;
  font-size:clamp(36px,8.7vw,52px);
}

.tbs-portions-faq__intro>p:not(.tbs-portions-kicker){
  margin-bottom:0;
  font-size:13px;
}

.tbs-portions-faq__list{
  border-top:1px solid var(--tbs-line);
}

.tbs-portions-faq details{
  border-bottom:1px solid var(--tbs-line);
}

.tbs-portions-faq summary{
  position:relative;
  display:flex;
  align-items:center;
  min-height:72px;
  padding:22px 48px 22px 0;
  cursor:pointer;
  list-style:none;
  color:var(--tbs-ink-strong);
  font-size:18px;
  font-weight:700;
  letter-spacing:-.025em;
  line-height:1.35;
}

.tbs-portions-faq summary::-webkit-details-marker{display:none}

.tbs-portions-faq summary::before,
.tbs-portions-faq summary::after{
  content:"";
  position:absolute;
  top:50%;
  right:9px;
  width:14px;
  height:2px;
  border-radius:2px;
  background:var(--tbs-secondary-dark);
  transform:translateY(-50%);
}

.tbs-portions-faq summary::after{
  transform:translateY(-50%) rotate(90deg);
}

.tbs-portions-faq details[open] summary::after{
  transform:translateY(-50%) rotate(0);
}

.tbs-portions-faq details>div{
  padding:0 0 23px;
}

.tbs-portions-faq details p{
  max-width:780px;
  margin-bottom:0;
  font-size:13px;
}

/* Final */
.tbs-portions-final{
  padding:76px 0;
  background:var(--tbs-paper);
}

.tbs-portions-final__inner{
  align-items:center;
}

.tbs-portions-final p:not(.tbs-portions-kicker){
  margin-bottom:0;
}

.tbs-portions-noscript{
  width:min(calc(100% - 30px),900px);
  margin:24px auto;
  padding:15px 18px;
  border:1px solid rgba(220,79,133,.20);
  border-radius:16px;
  color:#7d465b;
  background:#fff1f5;
  font-size:12px;
  font-weight:700;
  text-align:center;
}

#tbs-checklist-modal .um,
#tbs-checklist-modal .um-form,
#tbs-checklist-modal form{
  max-width:100%;
}

/* Hover */
@media(hover:hover) and (pointer:fine){
  .tbs-portions-pillar-nav__link:not(.is-current):not([aria-current="page"]):not(.tbs-portions-pillar-nav__link--cta):hover{
    color:var(--tbs-secondary-dark);
    border-color:rgba(102,88,180,.27);
    background:#f7f3ff;
    transform:translateY(-2px);
  }

  .tbs-portions-button:hover,
  .tbs-portions-pillar-nav__link--cta:hover{
    transform:translateY(-3px);
  }

  .tbs-portions-button--primary:hover{
    box-shadow:0 19px 38px rgba(112,60,145,.32);
  }

  .tbs-portions-data__grid article,
  .tbs-portions-formula__grid article,
  .tbs-portions-types__grid article,
  .tbs-portions-shopping__grid article,
  .tbs-portions-errors__grid article,
  .tbs-portions-related__grid>a{
    transition:.28s ease;
  }

  .tbs-portions-data__grid article:hover,
  .tbs-portions-formula__grid article:hover,
  .tbs-portions-types__grid article:hover,
  .tbs-portions-shopping__grid article:hover,
  .tbs-portions-errors__grid article:hover,
  .tbs-portions-related__grid>a:hover{
    border-color:rgba(102,88,180,.22);
    box-shadow:0 21px 43px rgba(66,49,86,.13);
    transform:translateY(-5px);
  }

  .tbs-portions-table tbody tr:hover{
    background:linear-gradient(90deg,rgba(255,244,249,.93),rgba(246,242,255,.92));
    box-shadow:inset 4px 0 0 var(--tbs-primary);
  }
}

/* Responsive */
@media(max-width:1399px){
  .tbs-portions-pillar-nav__inner{padding-inline:16px}

  .tbs-portions-pillar-nav{
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding:2px 0 5px;
    scroll-padding-inline:16px;
    scroll-snap-type:x proximity;
    scrollbar-width:thin;
  }

  .tbs-portions-pillar-nav__link{
    flex:0 0 auto;
    min-width:126px;
    padding-inline:19px;
    scroll-snap-align:start;
    font-size:12px;
  }

  .tbs-portions-pillar-nav__link--home{min-width:174px}
  .tbs-portions-pillar-nav__link:nth-child(2){min-width:172px}
  .tbs-portions-pillar-nav__link--cta{min-width:185px}
}

@media(min-width:560px){
  .tbs-portions-data__grid,
  .tbs-portions-types__grid,
  .tbs-portions-shopping__grid,
  .tbs-portions-errors__grid,
  .tbs-portions-related__grid{
    grid-template-columns:repeat(2,1fr);
  }

  .tbs-portions-formula__grid{
    grid-template-columns:repeat(3,1fr);
  }

  .tbs-portions-actions{flex-wrap:nowrap}
}

@media(min-width:768px){
  .tbs-portions-checklist-card{
    grid-template-columns:minmax(0,1.04fr) minmax(340px,.96fr);
  }

  .tbs-portions-final__inner{
    grid-template-columns:minmax(0,1.3fr) minmax(350px,.7fr);
    gap:60px;
  }

  .tbs-portions-variable-example{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    align-items:center;
  }
}

@media(min-width:900px){
  .tbs-portions-container{
    width:min(calc(100% - 64px),1560px);
    max-width:1560px;
  }

  .tbs-portions-section{padding-block:94px}

  .tbs-portions-hero{
    min-height:clamp(700px,48vw,820px);
  }

  .tbs-portions-hero__grid{
    grid-template-columns:minmax(0,.98fr) minmax(520px,1.02fr);
    gap:clamp(52px,5vw,82px);
  }

  .tbs-portions-hero h1{
    max-width:11.8ch;
    font-size:clamp(62px,4.55vw,84px);
    letter-spacing:-.052em;
    line-height:1.015;
  }

  .tbs-portions-hero__lead{
    font-size:17px;
    line-height:1.76;
  }

  .tbs-portions-section-head h2,
  .tbs-portions-answer h2,
  .tbs-portions-adjustments__copy h2,
  .tbs-portions-checklist-card h2,
  .tbs-portions-product__copy h2,
  .tbs-portions-integration h2,
  .tbs-portions-faq__intro h2,
  .tbs-portions-final h2{
    font-size:clamp(48px,3.75vw,64px);
  }

  .tbs-portions-answer__grid{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:70px;
  }

  .tbs-portions-data__grid{
    grid-template-columns:repeat(5,1fr);
  }

  .tbs-portions-types__grid,
  .tbs-portions-errors__grid{
    grid-template-columns:repeat(3,1fr);
  }

  .tbs-portions-adjustments__grid,
  .tbs-portions-product__grid{
    grid-template-columns:repeat(2,1fr);
    gap:clamp(52px,6vw,92px);
  }

  .tbs-portions-shopping__grid{
    grid-template-columns:repeat(4,1fr);
  }

  .tbs-portions-integration__inner{
    grid-template-columns:minmax(0,1.25fr) minmax(350px,.75fr);
    gap:65px;
  }

  .tbs-portions-related__grid{
    grid-template-columns:repeat(4,1fr);
  }

  .tbs-portions-related__grid>a{
    grid-template-columns:46px 1fr;
    align-content:center;
  }

  .tbs-portions-related__grid>a>svg{
    grid-column:2;
    grid-row:3;
    margin-top:12px;
  }

  .tbs-portions-faq__grid{
    grid-template-columns:minmax(0,.74fr) minmax(0,1.26fr);
    gap:clamp(52px,6vw,92px);
  }
}

@media(max-width:1199px){
  .tbs-portions-table thead th:first-child,
  .tbs-portions-table tbody th{
    position:sticky;
    left:0;
  }

  .tbs-portions-table thead th:first-child{
    z-index:7;
  }

  .tbs-portions-table tbody th{
    z-index:5;
    box-shadow:12px 0 22px -18px rgba(41,37,50,.55);
  }
}

@media(min-width:1680px){
  .tbs-portions-container{
    width:min(calc(100% - 112px),1700px);
    max-width:1700px;
  }

  .tbs-portions-section{padding-block:104px}
}

@media(max-width:767px){
  html,body{max-width:100%;overflow-x:clip}

  .tbs-portions-container{
    width:calc(100% - 22px);
    max-width:none;
  }

  .tbs-portions-pillar-nav-section{padding:11px 0 9px}
  .tbs-portions-pillar-nav__inner{padding:0}

  .tbs-portions-pillar-nav{
    gap:8px;
    padding:0 14px 5px;
    scroll-padding-inline:14px;
  }

  .tbs-portions-pillar-nav__link{
    min-width:118px;
    min-height:48px;
    padding:8px 16px;
    font-size:11px;
  }

  .tbs-portions-pillar-nav__link--home{min-width:164px}
  .tbs-portions-pillar-nav__link:nth-child(2){min-width:163px}
  .tbs-portions-pillar-nav__link--cta{min-width:174px;padding-right:7px}

  .tbs-portions-hero{
    min-height:auto;
    padding:32px 0 54px;
  }

  .tbs-portions-hero h1{
    max-width:12ch;
    font-size:clamp(41px,11.7vw,56px);
    letter-spacing:-.045em;
    line-height:1.02;
  }

  .tbs-portions-hero__lead{font-size:14px}

  .tbs-portions-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .tbs-portions-button{width:100%}
  .tbs-portions-hero__proof{grid-template-columns:1fr}

  .tbs-portions-hero__figure,
  .tbs-portions-adjustments__figure{
    max-width:none;
    margin-right:-11px;
    margin-left:-11px;
  }

  .tbs-portions-hero__image-wrap,
  .tbs-portions-adjustments__figure img{
    border-right:0;
    border-left:0;
    border-radius:0;
  }

  .tbs-portions-section{padding:60px 0}

  .tbs-portions-section-head{text-align:left}

  .tbs-portions-section-head h2{
    max-width:13ch;
    margin-left:0;
  }

  .tbs-portions-section-head h2,
  .tbs-portions-answer h2,
  .tbs-portions-adjustments__copy h2,
  .tbs-portions-checklist-card h2,
  .tbs-portions-product__copy h2,
  .tbs-portions-integration h2,
  .tbs-portions-faq__intro h2,
  .tbs-portions-final h2{
    font-size:clamp(36px,10.2vw,47px);
    letter-spacing:-.037em;
    line-height:1.07;
  }

  .tbs-portions-data__grid,
  .tbs-portions-formula__grid,
  .tbs-portions-types__grid,
  .tbs-portions-shopping__grid,
  .tbs-portions-errors__grid,
  .tbs-portions-related__grid{
    grid-template-columns:1fr;
  }

  .tbs-portions-table-wrap{
    margin-right:-11px;
    margin-left:-11px;
    width:calc(100% + 22px);
    border-right:0;
    border-left:0;
    border-radius:0;
  }

  .tbs-portions-table{
    min-width:1160px;
  }

  .tbs-portions-table th,
  .tbs-portions-table td{
    padding:18px 17px;
  }

  .tbs-portions-table-note{
    width:100%;
    border-radius:16px;
    text-align:left;
  }

  .tbs-portions-checklist-card,
  .tbs-portions-product__visual,
  .tbs-portions-variable-example{
    border-radius:24px;
  }

  .tbs-portions-registration-note{
    grid-template-columns:38px 1fr;
    padding:14px 13px;
  }

  .tbs-portions-registration-note>span{
    width:38px;
    height:38px;
  }

  .tbs-portions-product__visual{min-height:340px}

  .tbs-portions-integration__inner,
  .tbs-portions-final__inner{
    padding:38px 19px;
    border-radius:25px;
  }

  .tbs-portions-final__inner{text-align:center}
}

@media(max-width:380px){
  .tbs-portions-container{width:calc(100% - 18px)}

  .tbs-portions-hero__figure,
  .tbs-portions-adjustments__figure{
    margin-right:-9px;
    margin-left:-9px;
  }

  .tbs-portions-hero h1{font-size:38px}

  .tbs-portions-table-wrap{
    margin-right:-9px;
    margin-left:-9px;
    width:calc(100% + 18px);
  }
}

@media print{
  .tbs-portions-pillar-nav-section,
  .tbs-portions-hero,
  .tbs-portions-quick-nav,
  .tbs-portions-integration,
  .tbs-portions-final,
  .tbs-portions-skip-link,
  .tbs-portions-button{
    display:none!important;
  }

  .tbs-portions-page,
  .tbs-portions-section,
  .tbs-portions-container{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    color:#000;
    background:#fff;
  }
}

@media(prefers-reduced-motion:reduce){
  .tbs-portions-page *,
  .tbs-portions-page *::before,
  .tbs-portions-page *::after{
    scroll-behavior:auto!important;
    animation:none!important;
    transition:none!important;
  }
}
/* ============================================================
   V2 · CALCULADORA, CHECKLIST PROTEGIDO, CATÁLOGO Y PLAN DIGITAL
   ============================================================ */

.tbs-portions-page .tbs-portions-section-head--calculator>p:last-child{
  max-width:760px;
  margin:16px auto 0;
  font-size:14px;
}

.tbs-portions-page .tbs-portions-calculator{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 5% 12%,rgba(242,103,154,.08),transparent 24rem),
    radial-gradient(circle at 96% 88%,rgba(129,116,208,.09),transparent 27rem),
    linear-gradient(145deg,#fff8fa,#f7f3ff);
}

.tbs-portions-page .tbs-portions-calculator__layout{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:18px;
  max-width:1120px;
  margin:0 auto;
}

.tbs-portions-page .tbs-portions-calculator__form,
.tbs-portions-page .tbs-portions-calculator__result{
  border:1px solid var(--tbs-line);
  border-radius:28px;
  background:rgba(255,255,255,.96);
  box-shadow:var(--tbs-shadow);
}

.tbs-portions-page .tbs-portions-calculator__form{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  padding:clamp(22px,4vw,38px);
}

.tbs-portions-page .tbs-portions-field{
  display:grid;
  gap:8px;
}

.tbs-portions-page .tbs-portions-field label{
  color:var(--tbs-ink-strong);
  font-size:12px;
  font-weight:700;
}

.tbs-portions-page .tbs-portions-field label span{
  margin-left:5px;
  color:var(--tbs-muted);
  font-size:9px;
  font-weight:600;
  text-transform:uppercase;
}

.tbs-portions-page .tbs-portions-field input{
  width:100%;
  min-height:54px;
  padding:0 15px;
  border:1px solid rgba(62,54,89,.15);
  border-radius:15px;
  color:var(--tbs-ink-strong);
  background:#fff;
  box-shadow:inset 0 1px 2px rgba(42,34,55,.035);
  font:600 15px/1.2 var(--tbs-font);
}

.tbs-portions-page .tbs-portions-field input::placeholder{
  color:#aaa3b1;
  font-weight:500;
}

.tbs-portions-page .tbs-portions-field input:focus-visible{
  border-color:var(--tbs-secondary);
  outline:3px solid rgba(102,88,180,.18);
  outline-offset:1px;
}

.tbs-portions-page .tbs-portions-field>small{
  color:var(--tbs-muted);
  font-size:9.5px;
  line-height:1.45;
}

.tbs-portions-page .tbs-portions-field__suffix{
  position:relative;
}

.tbs-portions-page .tbs-portions-field__suffix input{
  padding-right:48px;
}

.tbs-portions-page .tbs-portions-field__suffix>span{
  position:absolute;
  top:50%;
  right:17px;
  color:var(--tbs-secondary-dark);
  font-size:14px;
  font-weight:800;
  transform:translateY(-50%);
  pointer-events:none;
}

.tbs-portions-page .tbs-portions-calculator__actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  padding-top:4px;
}

.tbs-portions-page .tbs-portions-calculator__actions button{
  appearance:none;
  cursor:pointer;
}

.tbs-portions-page .tbs-portions-calculator__error{
  grid-column:1/-1;
  margin:0;
  padding:13px 15px;
  border:1px solid rgba(196,63,96,.18);
  border-radius:14px;
  color:#9a304e;
  background:#fff0f4;
  font-size:11px;
  font-weight:700;
}

.tbs-portions-page .tbs-portions-calculator__result{
  padding:clamp(22px,4vw,38px);
  background:
    radial-gradient(circle at 92% 10%,rgba(242,103,154,.12),transparent 14rem),
    linear-gradient(145deg,#fff,#fbf8ff);
}

.tbs-portions-page .tbs-portions-calculator__result h3{
  margin:0 0 22px;
  font-size:clamp(28px,5.5vw,39px);
}

.tbs-portions-page .tbs-portions-result-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:11px;
}

.tbs-portions-page .tbs-portions-result-grid article{
  display:grid;
  grid-template-columns:1fr auto;
  gap:4px 15px;
  align-items:center;
  padding:17px;
  border:1px solid var(--tbs-line);
  border-radius:18px;
  background:#fff;
}

.tbs-portions-page .tbs-portions-result-grid article.is-highlighted{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--tbs-primary-dark),var(--tbs-secondary-dark));
  box-shadow:0 15px 30px rgba(92,68,131,.20);
}

.tbs-portions-page .tbs-portions-result-grid small{
  color:var(--tbs-secondary);
  font-size:8px;
  font-weight:800;
  letter-spacing:.11em;
}

.tbs-portions-page .tbs-portions-result-grid strong{
  grid-row:1/3;
  grid-column:2;
  color:var(--tbs-ink-strong);
  font-size:clamp(28px,7vw,42px);
  line-height:1;
}

.tbs-portions-page .tbs-portions-result-grid span{
  color:var(--tbs-muted);
  font-size:9px;
}

.tbs-portions-page .tbs-portions-result-grid .is-highlighted small,
.tbs-portions-page .tbs-portions-result-grid .is-highlighted strong,
.tbs-portions-page .tbs-portions-result-grid .is-highlighted span{
  color:#fff;
}

.tbs-portions-page .tbs-portions-result-note{
  margin:17px 0 0;
  padding:14px 15px;
  border-left:4px solid var(--tbs-primary);
  border-radius:0 14px 14px 0;
  background:var(--tbs-pink-soft);
  font-size:10px;
}

/* Checklist protegido */
.tbs-portions-page .tbs-portions-checklist-card__figure{
  position:relative;
  display:block;
  min-height:0;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#efe8ec;
}

.tbs-portions-page .tbs-portions-checklist-card__figure::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 58%,rgba(36,25,47,.62));
  pointer-events:none;
}

.tbs-portions-page .tbs-portions-checklist-card__figure img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.tbs-portions-page .tbs-portions-checklist-card__figure>span{
  position:absolute;
  right:18px;
  bottom:18px;
  left:18px;
  z-index:2;
  color:#fff;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-align:center;
}

.tbs-portions-page .tbs-protected-download{position:relative}

/* Productos reales */
.tbs-portions-page .tbs-portions-products{
  background:
    radial-gradient(circle at 8% 10%,rgba(242,103,154,.055),transparent 25rem),
    radial-gradient(circle at 94% 90%,rgba(129,116,208,.065),transparent 27rem),
    #fffdfb;
}

.tbs-portions-page .tbs-portions-products__heading>p:last-child{
  max-width:760px;
  margin:16px auto 0;
  font-size:14px;
}

.tbs-portions-page .tbs-portions-products__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  align-items:stretch;
}

.tbs-portions-page .tbs-portions-product-card{
  display:flex;
  min-height:100%;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--tbs-line);
  border-radius:26px;
  background:#fff;
  box-shadow:var(--tbs-shadow-soft);
}

.tbs-portions-page .tbs-portions-product-card.is-featured{
  border-color:rgba(220,79,133,.23);
  box-shadow:0 22px 52px rgba(105,73,127,.14);
}

.tbs-portions-page .tbs-portions-product-card__media{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#eee8ec;
}

.tbs-portions-page .tbs-portions-product-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}

.tbs-portions-page .tbs-portions-product-card__media>span{
  position:absolute;
  top:14px;
  left:14px;
  z-index:2;
  padding:8px 11px;
  border-radius:999px;
  color:#fff;
  background:rgba(42,32,50,.74);
  box-shadow:0 8px 20px rgba(32,22,40,.15);
  backdrop-filter:blur(8px);
  font-size:8px;
  font-weight:800;
  letter-spacing:.10em;
}

.tbs-portions-page .tbs-portions-product-card.is-featured .tbs-portions-product-card__media>span{
  background:linear-gradient(135deg,var(--tbs-primary-dark),var(--tbs-secondary-dark));
}

.tbs-portions-page .tbs-portions-product-card__body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:24px;
}

.tbs-portions-page .tbs-portions-product-card__body>small{
  margin-bottom:9px;
  color:var(--tbs-secondary);
  font-size:8px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.tbs-portions-page .tbs-portions-product-card h3{
  margin:0 0 12px;
  font-size:clamp(25px,6vw,31px);
  line-height:1.08;
}

.tbs-portions-page .tbs-portions-product-card__body>p{
  margin-bottom:18px;
  font-size:12px;
}

.tbs-portions-page .tbs-portions-product-card__reason{
  display:grid;
  gap:4px;
  margin-bottom:19px;
  padding:14px;
  border-radius:15px;
  background:linear-gradient(145deg,#fff6f8,#f6f2ff);
}

.tbs-portions-page .tbs-portions-product-card__reason strong{
  color:var(--tbs-ink-strong);
  font-size:10px;
}

.tbs-portions-page .tbs-portions-product-card__reason span{
  color:var(--tbs-text);
  font-size:9.5px;
  line-height:1.5;
}

.tbs-portions-page .tbs-portions-product-card__price{
  display:flex;
  align-items:end;
  flex-wrap:wrap;
  gap:7px 10px;
  margin-top:auto;
  margin-bottom:18px;
}

.tbs-portions-page .tbs-portions-product-card__price del{
  color:var(--tbs-muted);
  font-size:10px;
}

.tbs-portions-page .tbs-portions-product-card__price strong{
  color:var(--tbs-primary-dark);
  font-size:28px;
  line-height:1;
}

.tbs-portions-page .tbs-portions-product-card__price span{
  color:var(--tbs-muted);
  font-size:9px;
}

.tbs-portions-page .tbs-portions-product-card__button{
  display:inline-flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  gap:9px;
  width:100%;
  padding:0 18px;
  border-radius:15px;
  color:#fff;
  background:linear-gradient(135deg,var(--tbs-primary-dark),var(--tbs-secondary-dark));
  box-shadow:0 12px 24px rgba(102,72,132,.17);
  font-size:12px;
  font-weight:700;
}

.tbs-portions-page .tbs-portions-product-card__button svg,
.tbs-portions-page .tbs-portions-products__footer a svg{
  width:17px;
  height:17px;
}

.tbs-portions-page .tbs-portions-products__footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:14px;
  margin-top:24px;
  padding:18px 20px;
  border:1px solid var(--tbs-line);
  border-radius:18px;
  background:#fff;
}

.tbs-portions-page .tbs-portions-products__footer p{
  margin:0;
  font-size:10px;
}

.tbs-portions-page .tbs-portions-products__footer a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  color:var(--tbs-secondary-dark);
  font-size:11px;
  font-weight:700;
}

/* Plan digital */
.tbs-portions-page .tbs-portions-plan{
  color:#fff;
  background:
    radial-gradient(circle at 92% 8%,rgba(255,255,255,.13),transparent 23rem),
    linear-gradient(118deg,#5d56a8,#8174c3 49%,#ed78aa);
}

.tbs-portions-page .tbs-portions-plan__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:38px;
  align-items:center;
}

.tbs-portions-page .tbs-portions-plan h2{
  max-width:15ch;
  margin:0 0 18px;
  color:#fff;
  font-size:clamp(38px,8.8vw,55px);
}

.tbs-portions-page .tbs-portions-plan h2 em{color:#ffd8e6}

.tbs-portions-page .tbs-portions-plan__copy>p:not(.tbs-portions-kicker){
  max-width:680px;
  color:rgba(255,255,255,.82);
  font-size:14px;
}

.tbs-portions-page .tbs-portions-check-list--light li{color:#fff}
.tbs-portions-page .tbs-portions-check-list--light svg{color:#ffd9e6}

.tbs-portions-page .tbs-portions-plan__price{
  display:flex;
  align-items:end;
  flex-wrap:wrap;
  gap:8px 12px;
  margin:24px 0;
}

.tbs-portions-page .tbs-portions-plan__price del{
  color:rgba(255,255,255,.60);
  font-size:12px;
}

.tbs-portions-page .tbs-portions-plan__price strong{
  color:#fff;
  font-size:38px;
  line-height:1;
}

.tbs-portions-page .tbs-portions-plan__price span{
  color:rgba(255,255,255,.72);
  font-size:10px;
}

.tbs-portions-page .tbs-portions-plan__media{
  position:relative;
  display:block;
  width:min(100%,440px);
  aspect-ratio:4/5;
  justify-self:center;
  overflow:hidden;
  border:7px solid rgba(255,255,255,.20);
  border-radius:30px;
  background:rgba(255,255,255,.12);
  box-shadow:0 30px 65px rgba(43,27,61,.26);
  transform:rotate(2deg);
}

.tbs-portions-page .tbs-portions-plan__media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.tbs-portions-page .tbs-portions-plan__media>span{
  position:absolute;
  right:15px;
  bottom:15px;
  left:15px;
  padding:12px 14px;
  border-radius:14px;
  color:#fff;
  background:rgba(43,31,54,.70);
  backdrop-filter:blur(9px);
  font-size:9px;
  font-weight:800;
  letter-spacing:.10em;
  text-align:center;
}

@media(min-width:640px){
  .tbs-portions-page .tbs-portions-calculator__form{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tbs-portions-page .tbs-portions-field--wide,
  .tbs-portions-page .tbs-portions-calculator__actions,
  .tbs-portions-page .tbs-portions-calculator__error{
    grid-column:1/-1;
  }

  .tbs-portions-page .tbs-portions-result-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .tbs-portions-page .tbs-portions-result-grid article{
    display:flex;
    min-height:155px;
    flex-direction:column;
    align-items:flex-start;
  }

  .tbs-portions-page .tbs-portions-result-grid strong{
    order:2;
    margin:11px 0 7px;
  }

  .tbs-portions-page .tbs-portions-products__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .tbs-portions-page .tbs-portions-product-card.is-featured{
    grid-column:1/-1;
    width:min(100%,600px);
    justify-self:center;
  }
}

@media(min-width:960px){
  .tbs-portions-page .tbs-portions-calculator__layout{
    grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);
    align-items:stretch;
  }

  .tbs-portions-page .tbs-portions-calculator__result{
    display:flex;
    flex-direction:column;
  }

  .tbs-portions-page .tbs-portions-result-grid{
    grid-template-columns:1fr;
  }

  .tbs-portions-page .tbs-portions-result-grid article{
    display:grid;
    min-height:auto;
    grid-template-columns:1fr auto;
  }

  .tbs-portions-page .tbs-portions-result-grid strong{
    order:initial;
    margin:0;
  }

  .tbs-portions-page .tbs-portions-products__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .tbs-portions-page .tbs-portions-product-card.is-featured{
    grid-column:auto;
    width:auto;
  }

  .tbs-portions-page .tbs-portions-plan__grid{
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr);
    gap:clamp(55px,7vw,110px);
  }
}

@media(max-width:639px){
  .tbs-portions-page .tbs-portions-calculator__actions,
  .tbs-portions-page .tbs-portions-calculator__actions .tbs-portions-button,
  .tbs-portions-page .tbs-portions-plan .tbs-portions-actions,
  .tbs-portions-page .tbs-portions-plan .tbs-portions-button{
    width:100%;
  }

  .tbs-portions-page .tbs-portions-products__footer{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media(hover:hover){
  .tbs-portions-page .tbs-portions-product-card:hover{
    box-shadow:0 24px 55px rgba(67,50,92,.15);
    transform:translateY(-5px);
  }

  .tbs-portions-page .tbs-portions-product-card__media:hover img{
    transform:scale(1.025);
  }

  .tbs-portions-page .tbs-portions-product-card__button:hover,
  .tbs-portions-page .tbs-portions-products__footer a:hover{
    filter:brightness(.96);
  }
}

/* ============================================================
   AJUSTE V4.3 · IMAGEN LIMPIA DEL CHECKLIST
   La imagen visible y la miniatura del modal se cambian desde el HTML.
   Este bloque solo controla presentación, sin máscaras ni overlays.
   ============================================================ */
.tbs-portions-page .tbs-portions-checklist-card__figure,
.tbs-portions-page a.tbs-portions-checklist-card__figure{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:0!important;
  aspect-ratio:4/5!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background:#f7eff3!important;
  box-shadow:none!important;
  isolation:isolate!important;
}

.tbs-portions-page .tbs-portions-checklist-card__figure::before,
.tbs-portions-page .tbs-portions-checklist-card__figure::after,
.tbs-portions-page a.tbs-portions-checklist-card__figure::before,
.tbs-portions-page a.tbs-portions-checklist-card__figure::after{
  content:none!important;
  display:none!important;
}

.tbs-portions-page .tbs-portions-checklist-card__figure>img,
.tbs-portions-page a.tbs-portions-checklist-card__figure>img{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  transform:none!important;
  clip-path:none!important;
  -webkit-mask:none!important;
  mask:none!important;
}

.tbs-portions-page .tbs-portions-checklist-card__figure>span,
.tbs-portions-page a.tbs-portions-checklist-card__figure>span{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  bottom:auto!important;
  left:auto!important;
  z-index:2!important;
  display:inline-flex!important;
  width:auto!important;
  max-width:calc(100% - 32px)!important;
  min-height:28px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:7px 11px!important;
  border:1px solid rgba(255,255,255,.82)!important;
  border-radius:999px!important;
  color:#fff!important;
  background:rgba(48,38,59,.64)!important;
  box-shadow:0 8px 20px rgba(41,28,51,.14)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
  font-size:8px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.10em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  pointer-events:none!important;
}

.tbs-portions-page .tbs-portions-checklist-card__figure:hover>img,
.tbs-portions-page .tbs-portions-checklist-card__figure:focus-visible>img{
  filter:none!important;
  transform:none!important;
}

@media(max-width:767px){
  .tbs-portions-page .tbs-portions-checklist-card__figure>span,
  .tbs-portions-page a.tbs-portions-checklist-card__figure>span{
    top:12px!important;
    right:12px!important;
    max-width:calc(100% - 24px)!important;
    min-height:26px!important;
    padding:6px 9px!important;
    font-size:7px!important;
  }
}/* End custom CSS */