.sieve-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:45px;align-items:center}.sieve-animation{background:#fff;border:1px solid #e4d6c6;border-radius:24px;padding:15px}.sieve-animation svg{width:100%;height:440px}.sieve-animation text,.rock-cutaway text{font:17px sans-serif;font-weight:700;fill:#705239}.sieve-fine{fill:#348889;animation:sift 3.7s linear infinite;animation-delay:var(--delay)}.sieve-coarse{fill:#b47543;animation:shake .25s ease-in-out infinite alternate}.fraction-key article{padding:22px 26px;background:#f0e2d1;border-left:6px solid #b47543;border-radius:12px;margin-bottom:18px}.fraction-key article:nth-child(2){background:#e2efeb;border-color:#348889}.fraction-key b{font-size:14px;letter-spacing:.15em}.fraction-key h3{margin:10px 0}.fraction-key p{margin:0}.fraction-key>strong{font-size:52px;color:var(--accent);display:block}.fraction-key strong small{font-size:17px;display:block}
@keyframes sift{0%{transform:translateY(-40px);opacity:0}12%{opacity:1}85%{transform:translateY(223px);opacity:1}100%{transform:translateY(223px);opacity:0}}@keyframes shake{to{transform:translateX(3px)}}
.rock-cutaway{width:100%}.rock-cutaway svg{width:100%;height:360px}.water-visual{padding:22px;min-height:480px}.water-visual .legend{font-size:17px;margin-top:8px}.water-visual p{font-size:17px}.pore-water{opacity:var(--pore-fill,.35);transition:opacity .4s}.rock-cutaway #grainSurface{transition:opacity .4s;animation:waterpulse 2.5s ease-in-out infinite alternate}.drum-spin{transform-origin:320px 190px;animation:drum 6s linear infinite}.drum-load{transform-origin:320px 190px;animation:tumble 1.6s ease-in-out infinite alternate}.visual-thumb svg{width:100%;height:100%;max-height:280px}.visual-thumb text{font:16px sans-serif;fill:#40545a}.deck-slide[data-slide="11"] .visual-thumb{height:245px}.deck-slide[data-slide="11"] .panel-duo p{font-size:20px}.deck-slide[data-slide="11"] .panel-duo h3{margin:12px 0}.deck-slide[data-slide="12"] .lab-item img{height:285px;padding:8px}.deck-slide[data-slide="12"] .lab-item p{font-size:18px}.deck-slide[data-slide="12"] .lab-item b{font-size:22px}.deck-slide[data-slide="12"] .lab-item>div{padding:20px}.deck-slide[data-slide="12"] .lead{font-size:21px;max-width:1350px}
@keyframes drum{to{transform:rotate(360deg)}}@keyframes tumble{to{transform:rotate(-48deg)}}@keyframes waterpulse{to{stroke-width:23px}}
.deck-slide[data-slide="13"]{--curve-color:#ac6c39}.deck-slide[data-slide="13"] .data-curve{stroke:var(--curve-color);transition:stroke .35s}.deck-slide[data-slide="13"] .chart-point{stroke:var(--curve-color)}.deck-slide[data-slide="13"] .chart-tabs button.active{background:var(--curve-color);border-color:var(--curve-color)}
.glossary-strip>div{background:#eee6f4;border-color:#cbbbd7;border-left:5px solid #80618f}.glossary-strip b{color:#634575}.glossary-strip span{color:#4c4153;font-size:17px}.deck-slide[data-slide="16"] .mechanism p{font-size:20px}.deck-slide[data-slide="16"] .mechanism{min-height:280px}.deck-slide[data-slide="16"] .mechanism-icon{font-size:44px}
.deck-slide[data-slide="17"] h2,.deck-slide[data-slide="18"] h2,.deck-slide[data-slide="19"] h2{font-size:80px;margin-bottom:3px}.deck-slide .material-subtitle{font-size:28px;color:#497c79;margin:0 0 18px}.deck-slide[data-slide="17"] .formation,.deck-slide[data-slide="18"] .formation,.deck-slide[data-slide="19"] .formation{margin:20px 0}.formation article{min-height:320px}.formation-icon{margin-bottom:13px}
.cement-tabs button[data-cement="IP"],.cement-tabs button[data-cement="IS"],.cement-tabs button[data-cement="IL"],.cement-tabs button[data-cement="IT"],.cement-tabs button[data-cement="ICo"]{color:#79577d;background:#f0e7f0;border-color:#c8a9c8}.cement-tabs button[data-cement="IP"].active,.cement-tabs button[data-cement="IS"].active,.cement-tabs button[data-cement="IL"].active,.cement-tabs button[data-cement="IT"].active,.cement-tabs button[data-cement="ICo"].active{background:#79577d;color:white}.cement-detail.added-family .cement-mark{background:#79577d}
.reaction-board{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin:35px 0}.reaction-board article{background:white;border:1px solid #c7ded7;border-radius:18px;padding:27px;width:29%;text-align:center;min-height:185px}.reaction-board article>span{font-size:48px;color:var(--accent);display:block;font-weight:800;margin-bottom:20px}.reaction-board article b{font-size:22px}.reaction-board>i{font-size:32px;color:var(--accent);font-style:normal}.reaction-result{width:100%;display:flex;align-items:center;justify-content:center;gap:30px;background:#d7ebe4;padding:25px;border-radius:16px}.reaction-result>span{font-size:55px;color:var(--accent)}.reaction-result b{font-size:30px;display:block}.reaction-result small{font-size:21px;display:block;margin-top:8px}
.property-visual{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px}.property-visual article{background:white;border:1px solid #c8ded7;border-radius:20px;padding:28px;min-height:450px}.large-icon,.criterion-icon{width:95px;height:95px;background:var(--pale);color:var(--accent);border-radius:20px;padding:16px;margin-bottom:20px}.large-icon svg,.criterion-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.property-visual small{font-size:15px;color:var(--accent);letter-spacing:.15em;font-weight:700}.property-visual h3{margin:14px 0 23px}.keyword-row{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:25px}.keyword-row span{background:#e7f0eb;color:#346c68;border-radius:8px;padding:8px;font-size:18px}.deck-slide .property-visual p{font-size:22px}
.mix-tabs button{font-size:21px;padding:15px 23px}.mix-ingredients>div{position:relative;padding:25px!important;min-height:240px}.mix-ingredients b{font-size:23px!important;line-height:1.2;display:block}.mix-ingredients span{font-size:19px!important}.mix-glyph{display:block;width:75px;height:75px;margin-bottom:22px;color:var(--accent);fill:none;stroke:currentColor;stroke-width:2.4}.mix-outcome h3{font-size:33px!important}.mix-outcome p{font-size:22px!important}.deck-slide .mix-card{padding:30px;gap:23px}.decision-grid .criterion-icon{margin-bottom:12px}.deck-slide .decision-grid>div{min-height:365px;padding:25px}.deck-slide .decision-grid p{font-size:23px}.deck-slide .decision-grid h3{margin:14px 0}
@media(prefers-reduced-motion:reduce){.sieve-fine,.sieve-coarse,.drum-spin,.drum-load,.rock-cutaway #grainSurface{animation:none}.sieve-fine{transform:translateY(210px)}}
/* Fotografías como referentes materiales, junto a los esquemas explicativos. */
.material-photo{margin:0;position:relative;overflow:hidden;border-radius:16px;background:#e9e6df;border:1px solid #d9ded5}
.material-photo img{height:100%;width:100%;object-fit:cover}
.material-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:10px 14px;background:linear-gradient(transparent,#152f2ce8);color:white;font-size:13px;font-weight:700;letter-spacing:.08em;padding-top:24px}
.material-heading{display:grid;grid-template-columns:1fr 335px;align-items:center;gap:35px;margin-bottom:18px;min-height:172px}
.material-heading .material-photo{height:172px}
.deck-slide .material-heading .material-subtitle{margin-bottom:0}
.deck-slide[data-slide="17"] .formation,.deck-slide[data-slide="18"] .formation,.deck-slide[data-slide="19"] .formation{margin:15px 0 20px}
.fraction-photo{float:right;margin:0 0 4px 15px;width:125px;border-radius:10px;overflow:hidden;background:#fff}
.fraction-photo img{width:125px;height:95px;object-fit:cover}
.fraction-photo figcaption{font-size:13px;line-height:1.3;padding:5px 7px;color:#615441}
.fraction-key article{display:flow-root}
.context-photo{display:flex;align-items:center;gap:18px;margin:16px 0;background:white;border-radius:12px;border:1px solid #ded8cc;overflow:hidden;max-width:550px}
.context-photo img{width:160px;height:100px;object-fit:contain;background:#f7f5ef}
.context-photo figcaption{font-size:17px;color:#655a4c;padding-right:16px;line-height:1.35}
.deck-slide[data-slide="10"] .water-select{margin-top:18px}
.reaction-with-photo{display:grid;grid-template-columns:290px 1fr;gap:25px;align-items:stretch;margin:25px 0}
.reaction-with-photo>.material-photo{min-height:350px}
.reaction-with-photo .reaction-board{margin:0;gap:12px}
.reaction-with-photo .reaction-board article{padding:20px 15px;min-height:170px;width:28%}
.reaction-with-photo .reaction-board article>span{font-size:40px;margin-bottom:15px}
.reaction-with-photo .reaction-board article b{font-size:20px}
.reaction-with-photo .reaction-result{padding:22px;gap:20px}
.reaction-with-photo .reaction-result b{font-size:27px}
.material-samples{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:18px 0}
.material-samples .material-photo{height:115px}
.material-samples img{object-position:center 52%}
.deck-slide[data-slide="24"] .property-visual{margin-top:0}
.deck-slide[data-slide="24"] .property-visual article{min-height:365px;padding:24px}
.deck-slide[data-slide="24"] .large-icon{float:right;width:65px;height:65px;padding:12px;margin:0 0 12px 10px}
.deck-slide[data-slide="24"] .property-visual h3{font-size:27px;margin-bottom:25px}
.deck-slide[data-slide="24"] .property-visual p{font-size:21px}

/* Fotografía sin pies superpuestos; curva interpolada mediante JS. */
.context-photo{display:block;width:225px;max-width:100%}.context-photo img{width:100%;height:115px;object-fit:contain}.fraction-photo img{height:105px}
.deck-slide[data-slide="13"] .data-curve{transition:stroke .35s}

.test-card .test-reading{margin:23px 0 0;padding-left:20px}.test-card .test-reading li{font-size:18px;line-height:1.38;color:#57545a;margin-bottom:10px}.test-card .test-reading li::marker{color:var(--accent)}
