{"product_id":"shake-shake-spf-50-mineral-milk","title":"Shake Shake SPF 50 Mineral Milk","description":"\u003cstyle\u003e\n:root{--pp-primary:#91d1ff;--pp-primary-dark:#5bb8f5;--pp-bg:#f8fafc;--pp-card:#fff;--pp-border:#e2e8f0;--pp-text:#1e293b;--pp-text-muted:#64748b;--pp-success:#22c55e;--pp-warning:#f59e0b;--pp-danger:#ef4444;--pp-shadow:0 1px 3px rgba(0,0,0,0.08);--pp-shadow-md:0 4px 12px rgba(0,0,0,0.1);--pp-radius:12px;--pp-radius-sm:8px}\n.pp{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;line-height:1.7;color:var(--pp-text);max-width:900px;margin:0 auto;padding:0}\n.pp *{box-sizing:border-box}\n\n\/* === Hero Section === *\/\n.pp-hero{margin-bottom:28px;padding-bottom:28px;border-bottom:1px solid var(--pp-border)}\n.pp-hero .pp-subtitle{font-size:1.05em;color:var(--pp-text-muted);max-width:700px;margin:0 0 20px;line-height:1.8}\n.pp-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}\n.pp-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--pp-bg);border-radius:50px;font-size:0.8em;color:var(--pp-text);border:1px solid var(--pp-border);transition:all 0.2s}\n.pp-badge:hover{border-color:var(--pp-primary);background:#f0f9ff}\n.pp-origin{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-radius:50px;margin:15px 0;border:1px solid #bae6fd}\n.pp-origin .flag{font-size:1.2em}\n.pp-origin .text{font-size:0.9em;color:var(--pp-text)}\n.pp-origin .text strong{font-weight:600}\n\n\/* === Anchor Navigation === *\/\n.pp-nav{margin-top:24px;padding:16px;background:var(--pp-bg);border-radius:var(--pp-radius);border:1px solid var(--pp-border)}\n.pp-nav-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none}\n.pp-nav-list li{list-style:none;margin:0;padding:0}\n.pp-nav-list a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 8px;background:var(--pp-card);border-radius:var(--pp-radius-sm);font-size:0.7em;color:var(--pp-text-muted);text-decoration:none;transition:all 0.25s ease;border:1px solid var(--pp-border);text-align:center;min-height:60px}\n.pp-nav-list a:hover{background:var(--pp-primary);color:#fff;border-color:var(--pp-primary);transform:translateY(-2px);box-shadow:var(--pp-shadow-md)}\n.pp-nav-list a .icon{font-size:1.3em;line-height:1}\n.pp-nav-list a .text{font-weight:500;line-height:1.2}\n\n\/* === Quick Info === *\/\n.pp-quickinfo{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0;padding:20px;background:linear-gradient(135deg,#f0f9ff 0%,var(--pp-bg) 100%);border-radius:var(--pp-radius);border:1px solid var(--pp-border)}\n@media(max-width:480px){.pp-quickinfo{grid-template-columns:1fr;gap:16px}}\n.pp-quickinfo-item{text-align:center;padding:8px}\n.pp-quickinfo-item .label{font-size:0.7em;text-transform:uppercase;letter-spacing:0.5px;color:var(--pp-text-muted);margin-bottom:6px}\n.pp-quickinfo-item .value{font-size:1.05em;font-weight:600;color:var(--pp-text)}\n.pp-quickinfo-item .value.safe{color:var(--pp-success)}\n.pp-quickinfo-item .value.caution{color:var(--pp-warning)}\n.pp-quickinfo-item .value.warning{color:var(--pp-danger)}\n\n\/* === Specs Grid === *\/\n.pp-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--pp-border);border-radius:var(--pp-radius);overflow:hidden;margin:24px 0;box-shadow:var(--pp-shadow)}\n@media(min-width:600px){.pp-specs{grid-template-columns:repeat(5,1fr)}}\n.pp-spec{background:var(--pp-card);padding:16px 10px;text-align:center;transition:background 0.2s}\n.pp-spec:hover{background:var(--pp-bg)}\n.pp-spec .icon{font-size:1.4em;margin-bottom:6px}\n.pp-spec .label{font-size:0.65em;text-transform:uppercase;letter-spacing:0.5px;color:var(--pp-text-muted);margin-bottom:4px}\n.pp-spec .value{font-size:0.8em;font-weight:600;color:var(--pp-text)}\n\n\/* === Sensory\/Texture === *\/\n.pp-sensory{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0}\n@media(min-width:600px){.pp-sensory{grid-template-columns:repeat(4,1fr)}}\n.pp-sensory-item{padding:16px;background:var(--pp-card);border-radius:var(--pp-radius);text-align:center;border:1px solid var(--pp-border);transition:all 0.2s}\n.pp-sensory-item:hover{box-shadow:var(--pp-shadow-md);transform:translateY(-2px)}\n.pp-sensory-item .icon{font-size:1.4em;margin-bottom:6px}\n.pp-sensory-item .label{font-size:0.65em;text-transform:uppercase;letter-spacing:0.5px;color:var(--pp-text-muted);margin-bottom:4px}\n.pp-sensory-item .value{font-size:0.8em;font-weight:600;color:var(--pp-text)}\n\n\/* === Features === *\/\n.pp-features{display:grid;grid-template-columns:1fr;gap:12px;margin:24px 0}\n@media(min-width:480px){.pp-features{grid-template-columns:repeat(2,1fr)}}\n.pp-feature{padding:18px;background:var(--pp-card);border-radius:var(--pp-radius);border:1px solid var(--pp-border);transition:all 0.25s ease}\n.pp-feature:hover{box-shadow:var(--pp-shadow-md);border-color:var(--pp-primary)}\n.pp-feature .icon{width:40px;height:40px;background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1em;margin-bottom:12px;box-shadow:0 2px 8px rgba(145,209,255,0.4)}\n.pp-feature h4{font-size:0.88em;font-weight:600;color:var(--pp-text);margin:0 0 4px}\n.pp-feature p{font-size:0.78em;color:var(--pp-text-muted);margin:0;line-height:1.5}\n\n\/* === Section Titles === *\/\n.pp-title{font-size:1.15em;font-weight:700;color:var(--pp-text);margin:36px 0 18px;padding-bottom:12px;border-bottom:3px solid var(--pp-primary);display:flex;align-items:center;gap:8px}\n\n\/* === Safety Items === *\/\n.pp-safety{display:grid;grid-template-columns:1fr;gap:10px;margin:18px 0}\n@media(min-width:600px){.pp-safety{grid-template-columns:repeat(2,1fr)}}\n.pp-safety-item{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:var(--pp-radius);font-size:0.85em;transition:transform 0.2s}\n.pp-safety-item:hover{transform:translateX(4px)}\n.pp-safety-item .icon{font-size:1.2em;flex-shrink:0}\n.pp-safety-item strong{display:block;font-size:0.92em;color:var(--pp-text);margin-bottom:3px}\n.pp-safety-item p{margin:0;color:var(--pp-text-muted);font-size:0.88em;line-height:1.5}\n.pp-safety-item.safe{background:linear-gradient(135deg,#dcfce7 0%,#f0fdf4 100%);border-left:4px solid var(--pp-success)}\n.pp-safety-item.caution{background:linear-gradient(135deg,#fef3c7 0%,#fffbeb 100%);border-left:4px solid var(--pp-warning)}\n.pp-safety-item.warning{background:linear-gradient(135deg,#fee2e2 0%,#fef2f2 100%);border-left:4px solid var(--pp-danger)}\n.pp-safety-item.info{background:linear-gradient(135deg,#e0f2fe 0%,#f0f9ff 100%);border-left:4px solid var(--pp-primary)}\n\n\/* === Ingredients === *\/\n.pp-ingredient{background:var(--pp-card);border-radius:var(--pp-radius);padding:18px;margin-bottom:14px;border:1px solid var(--pp-border);border-left:4px solid var(--pp-primary);box-shadow:var(--pp-shadow);transition:box-shadow 0.2s}\n.pp-ingredient:hover{box-shadow:var(--pp-shadow-md)}\n.pp-ingredient h3{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:0.98em;font-weight:600;color:var(--pp-text);margin:0 0 10px}\n.pp-ingredient h3 .conc{padding:4px 10px;background:var(--pp-bg);border-radius:50px;font-size:0.6em;font-weight:600;color:var(--pp-text-muted);border:1px solid var(--pp-border)}\n.pp-ingredient h3 .tag{margin-left:auto;padding:4px 12px;background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary-dark) 100%);border-radius:50px;font-size:0.6em;font-weight:600;color:#fff}\n.pp-ingredient\u003ep{color:var(--pp-text-muted);margin:0 0 12px;font-size:0.85em;line-height:1.6}\n.pp-science{background:var(--pp-bg);border-radius:var(--pp-radius-sm);padding:14px 14px 14px 30px;margin:12px 0;border:1px solid var(--pp-border)}\n.pp-science li{margin-bottom:6px;color:var(--pp-text);font-size:0.85em}\n.pp-science li:last-child{margin-bottom:0}\n.pp-warning{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:var(--pp-radius-sm);margin-top:12px;font-size:0.82em}\n.pp-warning.caution{background:linear-gradient(135deg,#fef3c7 0%,#fffbeb 100%)}\n.pp-warning.positive{background:linear-gradient(135deg,#dcfce7 0%,#f0fdf4 100%)}\n.pp-warning .icon{font-size:1em;flex-shrink:0}\n\n\/* === Accordion === *\/\n.pp-accordion{margin:20px 0}\n.pp-accordion input[type=\"checkbox\"]{display:none}\n.pp-accordion label{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--pp-card);border-radius:var(--pp-radius);cursor:pointer;font-weight:500;color:var(--pp-text);font-size:0.92em;border:1px solid var(--pp-border);transition:all 0.2s}\n.pp-accordion label:hover{border-color:var(--pp-primary);background:var(--pp-bg)}\n.pp-accordion label::after{content:'+';width:28px;height:28px;background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary-dark) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2em;transition:transform 0.3s}\n.pp-accordion input:checked+label{border-radius:var(--pp-radius) var(--pp-radius) 0 0}\n.pp-accordion input:checked+label::after{transform:rotate(45deg)}\n.pp-accordion .pp-acc-content{max-height:0;overflow:hidden;transition:max-height 0.3s ease;padding:0 16px;background:var(--pp-bg);border-radius:0 0 var(--pp-radius) var(--pp-radius);border:1px solid var(--pp-border);border-top:0;margin-top:-1px}\n.pp-accordion input:checked~.pp-acc-content{max-height:800px;padding:16px}\n.pp-acc-content .free-list{margin-top:12px;padding-top:12px;border-top:1px dashed var(--pp-border);font-size:0.82em;color:var(--pp-text-muted)}\n\n\/* === ROUTINE - Grid Tiles === *\/\n.pp-routine{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;padding:18px;background:var(--pp-bg);border-radius:var(--pp-radius);border:1px solid var(--pp-border)}\n@media(min-width:480px){.pp-routine{grid-template-columns:repeat(5,1fr)}}\n@media(min-width:700px){.pp-routine{grid-template-columns:repeat(6,1fr)}}\n.pp-routine-step{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px;background:var(--pp-card);border-radius:var(--pp-radius-sm);border:2px solid var(--pp-border);text-align:center;min-height:75px;transition:all 0.25s ease;cursor:default}\n.pp-routine-step:hover{border-color:var(--pp-primary);transform:translateY(-2px);box-shadow:var(--pp-shadow)}\n.pp-routine-step .num{width:28px;height:28px;background:var(--pp-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.75em;font-weight:700;color:var(--pp-text-muted);margin-bottom:6px;border:2px solid var(--pp-border)}\n.pp-routine-step .name{font-size:0.68em;color:var(--pp-text-muted);line-height:1.3;word-wrap:break-word;max-width:100%}\n.pp-routine-step.current{border-color:var(--pp-primary);background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);box-shadow:0 4px 12px rgba(145,209,255,0.3)}\n.pp-routine-step.current .num{background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary-dark) 100%);color:#fff;border-color:var(--pp-primary)}\n.pp-routine-step.current .name{color:var(--pp-text);font-weight:600}\n\n\/* === How to Use Steps === *\/\n.pp-steps{margin:18px 0}\n.pp-step{display:flex;gap:14px;padding:18px;background:var(--pp-card);border-radius:var(--pp-radius);margin-bottom:10px;border:1px solid var(--pp-border);transition:all 0.2s}\n.pp-step:hover{box-shadow:var(--pp-shadow-md);border-color:var(--pp-primary)}\n.pp-step .num{width:36px;height:36px;background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary-dark) 100%);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0;font-size:0.9em;box-shadow:0 2px 8px rgba(145,209,255,0.4)}\n.pp-step h4{font-size:0.92em;font-weight:600;color:var(--pp-text);margin:0 0 4px}\n.pp-step p{font-size:0.82em;color:var(--pp-text-muted);margin:0;line-height:1.5}\n\n\/* === Fit For === *\/\n.pp-fit{display:grid;grid-template-columns:1fr;gap:12px;margin:18px 0}\n@media(min-width:600px){.pp-fit{grid-template-columns:1fr 1fr}}\n.pp-fit-box{padding:18px;border-radius:var(--pp-radius);border:2px solid var(--pp-border);transition:all 0.2s}\n.pp-fit-box:hover{box-shadow:var(--pp-shadow)}\n.pp-fit-box.yes{border-color:#86efac;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%)}\n.pp-fit-box.no{border-color:#fca5a5;background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%)}\n.pp-fit-box h4{font-size:0.92em;font-weight:600;color:var(--pp-text);margin:0 0 12px}\n.pp-fit-box ul{margin:0;padding-left:18px}\n.pp-fit-box li{margin-bottom:6px;font-size:0.82em;color:var(--pp-text);line-height:1.5}\n\n\/* === Timeline === *\/\n.pp-timeline{margin:18px 0}\n.pp-tl-item{padding:20px;background:var(--pp-card);border-radius:var(--pp-radius);margin-bottom:14px;border:1px solid var(--pp-border);border-top:4px solid var(--pp-primary);box-shadow:var(--pp-shadow);transition:all 0.2s}\n.pp-tl-item:hover{box-shadow:var(--pp-shadow-md);transform:translateY(-2px)}\n.pp-tl-item .time{display:inline-block;padding:5px 12px;background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary-dark) 100%);border-radius:50px;font-size:0.72em;font-weight:600;color:#fff;margin-bottom:10px}\n.pp-tl-item h4{font-size:0.95em;font-weight:600;color:var(--pp-text);margin:0 0 6px}\n.pp-tl-item\u003ep{font-size:0.82em;color:var(--pp-text-muted);margin:0;line-height:1.5}\n.pp-tl-item .percent{display:inline-block;margin-top:10px;padding:5px 12px;background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%);border-radius:50px;font-size:0.68em;font-weight:600;color:var(--pp-success)}\n\n\/* === Cards Container === *\/\n.pp-cards{display:grid;grid-template-columns:1fr;gap:12px;margin:18px 0}\n@media(min-width:600px){.pp-cards{grid-template-columns:repeat(2,1fr)}}\n\n\/* === SKIN TYPE CARDS === *\/\n.pp-skin-card{background:#fff;border-radius:var(--pp-radius);overflow:hidden;border:1px solid var(--pp-border);box-shadow:var(--pp-shadow);transition:all 0.25s ease}\n.pp-skin-card:hover{box-shadow:var(--pp-shadow-md);transform:translateY(-2px)}\n.pp-skin-card .pp-skc-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}\n.pp-skin-card .pp-skc-type{font-weight:600;color:#1e293b;font-size:0.9em}\n.pp-skin-card .pp-skc-rate{font-size:0.72em;padding:5px 12px;border-radius:50px;font-weight:600;display:inline-flex;align-items:center;gap:4px}\n.pp-skin-card .pp-skc-rate.excellent{background:#dcfce7;color:#15803d}\n.pp-skin-card .pp-skc-rate.good{background:#ecfccb;color:#4d7c0f}\n.pp-skin-card .pp-skc-rate.moderate{background:#fef3c7;color:#b45309}\n.pp-skin-card .pp-skc-rate.poor{background:#fee2e2;color:#b91c1c}\n.pp-skin-card .pp-skc-stars{color:#f59e0b;letter-spacing:1px}\n.pp-skin-card .pp-skc-body{padding:14px 16px;background:#fff}\n.pp-skin-card .pp-skc-note{font-size:0.82em;color:#64748b;margin:0;line-height:1.5}\n\n\/* === Review Cards === *\/\n.pp-review-card{background:var(--pp-card);border-radius:var(--pp-radius);padding:18px;border:1px solid var(--pp-border);box-shadow:var(--pp-shadow);transition:all 0.25s ease}\n.pp-review-card:hover{box-shadow:var(--pp-shadow-md);transform:translateY(-2px)}\n.pp-review-card .platform{font-weight:600;color:var(--pp-text);font-size:0.92em;margin-bottom:12px;display:flex;align-items:center;gap:8px}\n.pp-review-card .platform .icon{font-size:1.1em}\n.pp-review-card .stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}\n.pp-review-card .stat{text-align:center;padding:12px;background:var(--pp-bg);border-radius:var(--pp-radius-sm);border:1px solid var(--pp-border)}\n.pp-review-card .stat .num{font-size:1em;font-weight:700;color:var(--pp-text)}\n.pp-review-card .stat .num .stars{color:#f59e0b;font-size:0.85em}\n.pp-review-card .stat .lbl{font-size:0.62em;text-transform:uppercase;color:var(--pp-text-muted);margin-top:3px;letter-spacing:0.5px}\n.pp-review-card .complaint{font-size:0.78em;color:var(--pp-text-muted);padding:12px;background:linear-gradient(135deg,#fee2e2 0%,#fef2f2 100%);border-radius:var(--pp-radius-sm);display:flex;align-items:flex-start;gap:8px}\n.pp-review-card .complaint .icon{flex-shrink:0}\n\n\/* === Dupe Cards === *\/\n.pp-dupe-card{background:var(--pp-card);border-radius:var(--pp-radius);padding:18px;border:1px solid var(--pp-border);position:relative;overflow:hidden;box-shadow:var(--pp-shadow);transition:all 0.25s ease}\n.pp-dupe-card:hover{box-shadow:var(--pp-shadow-md);transform:translateY(-2px)}\n.pp-dupe-card .match{position:absolute;top:0;right:0;color:#fff;padding:6px 14px;border-radius:0 var(--pp-radius) 0 var(--pp-radius);font-size:0.68em;font-weight:700}\n.pp-dupe-card .match.high{background:linear-gradient(135deg,var(--pp-success) 0%,#16a34a 100%)}\n.pp-dupe-card .match.medium{background:linear-gradient(135deg,var(--pp-warning) 0%,#d97706 100%)}\n.pp-dupe-card .match.low{background:linear-gradient(135deg,#94a3b8 0%,#64748b 100%)}\n.pp-dupe-card .product-name{font-weight:600;color:var(--pp-text);font-size:0.88em;margin-bottom:8px;padding-right:55px}\n.pp-dupe-card .price{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px}\n.pp-dupe-card .price .amount{font-size:1.1em;font-weight:700;color:var(--pp-success)}\n.pp-dupe-card .price .tag{padding:4px 10px;border-radius:50px;font-size:0.62em;font-weight:600}\n.pp-dupe-card .price .tag.budget{background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%);color:#15803d}\n.pp-dupe-card .price .tag.similar{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);color:#b45309}\n.pp-dupe-card .price .tag.premium{background:var(--pp-bg);color:var(--pp-text-muted);border:1px solid var(--pp-border)}\n.pp-dupe-card .diff{font-size:0.78em;color:var(--pp-text-muted);padding:12px;background:var(--pp-bg);border-radius:var(--pp-radius-sm);line-height:1.5;border:1px solid var(--pp-border)}\n.pp-dupe-card .diff p{margin:0}\n\n\/* === Comparison Cards === *\/\n.pp-compare-grid{margin:18px 0}\n.pp-compare-card{background:var(--pp-card);border-radius:var(--pp-radius);border:1px solid var(--pp-border);margin-bottom:12px;overflow:hidden;box-shadow:var(--pp-shadow);transition:all 0.2s}\n.pp-compare-card:hover{box-shadow:var(--pp-shadow-md)}\n.pp-compare-card.featured{border:2px solid var(--pp-primary);box-shadow:0 4px 16px rgba(145,209,255,0.25)}\n.pp-compare-card .card-header{padding:14px 18px;background:var(--pp-bg);border-bottom:1px solid var(--pp-border);display:flex;justify-content:space-between;align-items:center}\n.pp-compare-card.featured .card-header{background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary-dark) 100%);color:#fff}\n.pp-compare-card .card-header h4{margin:0;font-size:0.92em;font-weight:600}\n.pp-compare-card.featured .card-header h4{color:#fff}\n.pp-compare-card .card-header .price{font-weight:700;font-size:1em}\n.pp-compare-card.featured .card-header .price{color:#fff}\n.pp-compare-card .card-body{padding:14px 18px}\n.pp-compare-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--pp-border)}\n.pp-compare-row:last-child{border-bottom:none}\n.pp-compare-row .label{font-size:0.78em;color:var(--pp-text-muted)}\n.pp-compare-row .value{font-size:0.82em;font-weight:500;color:var(--pp-text);text-align:right}\n.pp-compare-row .value.good{color:var(--pp-success);font-weight:600}\n.pp-compare-row .value.bad{color:var(--pp-danger);font-weight:600}\n.pp-compare-row .value.neutral{color:var(--pp-text-muted)}\n\n\/* === Pros \u0026 Cons === *\/\n.pp-proscons{display:grid;grid-template-columns:1fr;gap:12px;margin:18px 0}\n@media(min-width:600px){.pp-proscons{grid-template-columns:1fr 1fr}}\n.pp-pros,.pp-cons{padding:20px;border-radius:var(--pp-radius)}\n.pp-pros{background:linear-gradient(135deg,#dcfce7 0%,#f0fdf4 100%);border:1px solid #86efac}\n.pp-cons{background:linear-gradient(135deg,#fee2e2 0%,#fef2f2 100%);border:1px solid #fca5a5}\n.pp-pros h4,.pp-cons h4{display:flex;align-items:center;gap:8px;font-size:0.95em;font-weight:600;color:var(--pp-text);margin:0 0 12px}\n.pp-pros ul,.pp-cons ul{margin:0;padding-left:18px}\n.pp-pros li,.pp-cons li{margin-bottom:6px;font-size:0.82em;color:var(--pp-text);line-height:1.5}\n\n\/* === FAQ === *\/\n.pp-faq{margin:18px 0}\n.pp-faq-item{border-bottom:1px solid var(--pp-border)}\n.pp-faq-item:last-child{border-bottom:none}\n.pp-faq-item input[type=\"checkbox\"]{display:none}\n.pp-faq-item label{display:flex;justify-content:space-between;align-items:center;padding:16px 0;font-size:0.92em;font-weight:500;color:var(--pp-text);cursor:pointer;transition:color 0.2s}\n.pp-faq-item label:hover{color:var(--pp-primary-dark)}\n.pp-faq-item label::after{content:'+';width:26px;height:26px;background:var(--pp-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1em;color:var(--pp-primary);transition:all 0.3s;flex-shrink:0;margin-left:12px;border:1px solid var(--pp-border)}\n.pp-faq-item input:checked+label::after{transform:rotate(45deg);background:linear-gradient(135deg,var(--pp-primary) 0%,var(--pp-primary-dark) 100%);color:#fff;border-color:var(--pp-primary)}\n.pp-faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s ease}\n.pp-faq-item input:checked~.pp-faq-answer{max-height:500px}\n.pp-faq-answer p{padding:0 0 16px;font-size:0.85em;color:var(--pp-text-muted);line-height:1.7;margin:0}\n\n\/* === Verdict === *\/\n.pp-verdict{padding:28px 22px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-radius:var(--pp-radius);margin:36px 0 24px;border-left:5px solid var(--pp-primary);box-shadow:var(--pp-shadow-md)}\n.pp-verdict .stars{font-size:1.8em;color:#f59e0b;letter-spacing:4px;margin-bottom:8px}\n.pp-verdict .score{font-size:1.4em;font-weight:700;color:var(--pp-text);margin-bottom:14px}\n.pp-verdict .text{font-size:0.92em;color:var(--pp-text-muted);max-width:700px;line-height:1.7;margin:0}\n.pp-verdict .text strong{color:var(--pp-text)}\n.pp-verdict .text p{margin:0}\n\u003c\/style\u003e\n\n\u003cdiv class=\"pp\"\u003e\n\n  \u003csection id=\"pp-overview\" class=\"pp-hero\"\u003e\n    \u003cp class=\"pp-subtitle\"\u003eBy \u003cstrong\u003eVacation\u003c\/strong\u003e — Shake Shake SPF 50 Mineral Milk is a lightweight, watery-milk mineral face sunscreen built around a non-nano ZincWater formula with 20.5% zinc oxide. Its signature \"shakerball\" bottle mixes the formula for streak-free, no-white-cast application, while skincare-grade hyaluronic acid, squalane, ceramides, niacinamide and a peptide support and hydrate the skin barrier with every wear.\u003c\/p\u003e\n    \n    \u003cdiv class=\"pp-origin\"\u003e\n      \u003cspan class=\"flag\"\u003e🇺🇸\u003c\/span\u003e\n      \u003cspan class=\"text\"\u003e\u003cstrong\u003eUS Indie \/ Clean Beauty\u003c\/strong\u003e · Made in USA\u003c\/span\u003e\n    \u003c\/div\u003e\n    \n    \u003cdiv class=\"pp-badges\"\u003e\n      \u003cspan class=\"pp-badge\"\u003e✔ Vendor: Vacation\u003c\/span\u003e\n      \u003cspan class=\"pp-badge\"\u003e✔ SPF 50 Broad Spectrum\u003c\/span\u003e\n      \u003cspan class=\"pp-badge\"\u003e✔ 100% Mineral (Non-Nano Zinc)\u003c\/span\u003e\n      \u003cspan class=\"pp-badge\"\u003e✔ Pregnancy-Friendly\u003c\/span\u003e\n      \u003cspan class=\"pp-badge\"\u003e✔ Vegan \u0026amp; Cruelty-Free\u003c\/span\u003e\n      \u003cspan class=\"pp-badge\"\u003e✔ Non-Comedogenic\u003c\/span\u003e\n      \u003cspan class=\"pp-badge\"\u003e✔ Reef-Conscious Filters\u003c\/span\u003e\n    \u003c\/div\u003e\n\n    \u003cnav class=\"pp-nav\"\u003e\n      \u003cul class=\"pp-nav-list\"\u003e\n        \u003cli\u003e\u003ca href=\"#pp-safety\"\u003e\u003cspan class=\"icon\"\u003e🛡️\u003c\/span\u003e\u003cspan class=\"text\"\u003eSafety\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003ca href=\"#pp-ingredients\"\u003e\u003cspan class=\"icon\"\u003e🔬\u003c\/span\u003e\u003cspan class=\"text\"\u003eIngredients\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003ca href=\"#pp-routine\"\u003e\u003cspan class=\"icon\"\u003e🔄\u003c\/span\u003e\u003cspan class=\"text\"\u003eRoutine\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003ca href=\"#pp-skin-types\"\u003e\u003cspan class=\"icon\"\u003e🎯\u003c\/span\u003e\u003cspan class=\"text\"\u003eSkin Types\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003ca href=\"#pp-results\"\u003e\u003cspan class=\"icon\"\u003e📈\u003c\/span\u003e\u003cspan class=\"text\"\u003eResults\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003ca href=\"#pp-reviews\"\u003e\u003cspan class=\"icon\"\u003e⭐\u003c\/span\u003e\u003cspan class=\"text\"\u003eReviews\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003ca href=\"#pp-dupes\"\u003e\u003cspan class=\"icon\"\u003e💰\u003c\/span\u003e\u003cspan class=\"text\"\u003eDupes\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003ca href=\"#pp-compare\"\u003e\u003cspan class=\"icon\"\u003e⚖️\u003c\/span\u003e\u003cspan class=\"text\"\u003eCompare\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003ca href=\"#pp-faq\"\u003e\u003cspan class=\"icon\"\u003e❓\u003c\/span\u003e\u003cspan class=\"text\"\u003eFAQ\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/nav\u003e\n  \u003c\/section\u003e\n\n  \u003cdiv class=\"pp-quickinfo\"\u003e\n    \u003cdiv class=\"pp-quickinfo-item\"\u003e\n      \u003cdiv class=\"label\"\u003ePregnancy Safe\u003c\/div\u003e\n      \u003cdiv class=\"value safe\"\u003eYes ✔\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-quickinfo-item\"\u003e\n      \u003cdiv class=\"label\"\u003eFungal Acne Safe\u003c\/div\u003e\n      \u003cdiv class=\"value warning\"\u003eNo ✗\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-quickinfo-item\"\u003e\n      \u003cdiv class=\"label\"\u003eComedogenic Rating\u003c\/div\u003e\n      \u003cdiv class=\"value safe\"\u003e2\/5\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"pp-specs\"\u003e\n    \u003cdiv class=\"pp-spec\"\u003e\n      \u003cdiv class=\"icon\"\u003e☀️\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eProtection\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003eSPF 50 Broad Spectrum\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-spec\"\u003e\n      \u003cdiv class=\"icon\"\u003e🧪\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eActive Filter\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003eZinc Oxide 20.5%\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-spec\"\u003e\n      \u003cdiv class=\"icon\"\u003e🧴\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eSize\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003e1.7 oz \/ 50ml\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-spec\"\u003e\n      \u003cdiv class=\"icon\"\u003e🌎\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eOrigin\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003eUSA\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-spec\"\u003e\n      \u003cdiv class=\"icon\"\u003e🐰\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eEthics\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003eVegan \u0026amp; Cruelty-Free\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 class=\"pp-title\"\u003e✨ Texture \u0026amp; Feel\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-sensory\"\u003e\n    \u003cdiv class=\"pp-sensory-item\"\u003e\n      \u003cdiv class=\"icon\"\u003e💧\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eConsistency\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003eWatery-milk lotion\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-sensory-item\"\u003e\n      \u003cdiv class=\"icon\"\u003e👃\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eScent\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003eLight fresh fragrance\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-sensory-item\"\u003e\n      \u003cdiv class=\"icon\"\u003e⏱️\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eAbsorption\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003eFast, streak-free\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-sensory-item\"\u003e\n      \u003cdiv class=\"icon\"\u003e🎯\u003c\/div\u003e\n      \u003cdiv class=\"label\"\u003eFinish\u003c\/div\u003e\n      \u003cdiv class=\"value\"\u003eNatural \/ lightly dewy\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"pp-features\"\u003e\n    \u003cdiv class=\"pp-feature\"\u003e\n      \u003cdiv class=\"icon\"\u003e🫧\u003c\/div\u003e\n      \u003ch4\u003e\"Shakerball\" Technology\u003c\/h4\u003e\n      \u003cp\u003eAn internal mixing ball blends the non-nano ZincWater formula on every shake, so the milk applies smooth and streak-free instead of thick and chalky.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-feature\"\u003e\n      \u003cdiv class=\"icon\"\u003e🧬\u003c\/div\u003e\n      \u003ch4\u003eSkincare-Grade Actives\u003c\/h4\u003e\n      \u003cp\u003eGoes beyond sun protection with hyaluronic acid, squalane, a ceramide complex, niacinamide and a polypeptide to hydrate and reinforce the barrier.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-feature\"\u003e\n      \u003cdiv class=\"icon\"\u003e🤍\u003c\/div\u003e\n      \u003ch4\u003eMinimal White Cast\u003c\/h4\u003e\n      \u003cp\u003eThe non-nano zinc is formulated to rub in clear on a wide range of skin tones, avoiding the heavy ghost-cast common to mineral sunscreens.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-feature\"\u003e\n      \u003cdiv class=\"icon\"\u003e💄\u003c\/div\u003e\n      \u003ch4\u003eLayers Under Makeup\u003c\/h4\u003e\n      \u003cp\u003eLightweight enough to sit as the final skincare step without pilling, leaving a grippy, makeup-friendly base for foundation or concealer.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-safety\" class=\"pp-title\"\u003e🛡️ Safety \u0026amp; Compatibility\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-safety\"\u003e\n    \u003cdiv class=\"pp-safety-item safe\"\u003e\n      \u003cspan class=\"icon\"\u003e✅\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003ePregnancy \u0026amp; Breastfeeding\u003c\/strong\u003e\n        \u003cp\u003eUses mineral zinc oxide rather than chemical UV filters like oxybenzone, and contains no retinoids or hydroquinone — generally considered a pregnancy-friendly sunscreen. Confirm with your OB-GYN.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-safety-item warning\"\u003e\n      \u003cspan class=\"icon\"\u003e⚠️\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003eFungal Acne (Malassezia)\u003c\/strong\u003e\n        \u003cp\u003eNot malassezia-safe: contains several esters and plant oils (polyglyceryl esters, olivate, passionfruit and cottonseed oil) that can feed fungal acne.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-safety-item caution\"\u003e\n      \u003cspan class=\"icon\"\u003e🌸\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003eContains Fragrance\u003c\/strong\u003e\n        \u003cp\u003eIncludes fragrance components and the EU allergen hexyl cinnamal. Very reactive or fragrance-sensitive skin should patch test first.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-safety-item safe\"\u003e\n      \u003cspan class=\"icon\"\u003e🤝\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003ePairs With Actives\u003c\/strong\u003e\n        \u003cp\u003eAs a leave-on mineral SPF it layers comfortably over vitamin C, niacinamide, retinol, AHA or BHA used earlier in your routine.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-safety-item info\"\u003e\n      \u003cspan class=\"icon\"\u003e🌊\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003eReef-Conscious Filters\u003c\/strong\u003e\n        \u003cp\u003eFree of oxybenzone and octinoxate and built on non-nano zinc, making it a more reef-conscious choice for travel.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-safety-item info\"\u003e\n      \u003cspan class=\"icon\"\u003e🧪\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003eTested Formula\u003c\/strong\u003e\n        \u003cp\u003eDermatologist tested and reviewed by toxicologists; PEG-free, paraben-free, sulfate-free and free of harsh drying alcohols.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-ingredients\" class=\"pp-title\"\u003e🔬 Ingredient Breakdown\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-ingredient\"\u003e\n    \u003ch3\u003e\n\u003cspan class=\"emoji\"\u003e☀️\u003c\/span\u003e Zinc Oxide \u003cspan class=\"conc\"\u003e20.5%\u003c\/span\u003e \u003cspan class=\"tag\"\u003eProven\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eThe sole active and a non-nano mineral UV filter. Zinc oxide reflects and absorbs UV, giving genuine broad-spectrum coverage across UVB and the full UVA range, and is gentle enough for sensitive and reactive skin.\u003c\/p\u003e\n    \u003cul class=\"pp-science\"\u003e\n      \u003cli\u003e\n\u003cstrong\u003eCoverage:\u003c\/strong\u003e One of the broadest single-filter UVA\/UVB reflectors approved by the FDA.\u003c\/li\u003e\n      \u003cli\u003e\n\u003cstrong\u003ePhotostability:\u003c\/strong\u003e Highly photostable, so it does not degrade quickly in sunlight.\u003c\/li\u003e\n      \u003cli\u003e\n\u003cstrong\u003eTolerance:\u003c\/strong\u003e Recognized as low-irritation and unlikely to sting eyes, which is why it features in baby and sensitive-skin formulas.\u003c\/li\u003e\n    \u003c\/ul\u003e\n    \u003cdiv class=\"pp-warning positive\"\u003e\n      \u003cspan class=\"icon\"\u003e✅\u003c\/span\u003e\n      \u003cdiv\u003eNon-nano grade stays on the skin's surface rather than penetrating, addressing common absorption concerns.\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"pp-ingredient\"\u003e\n    \u003ch3\u003e\n\u003cspan class=\"emoji\"\u003e🧩\u003c\/span\u003e Ceramide Complex (NP, AP, EOP) \u003cspan class=\"conc\"\u003eBarrier\u003c\/span\u003e \u003cspan class=\"tag\"\u003eProven\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eThree skin-identical ceramides paired with cholesterol and phytosphingosine. Together they replicate the lipids in your outer skin layer, helping lock in water and shore up a compromised barrier.\u003c\/p\u003e\n    \u003cul class=\"pp-science\"\u003e\n      \u003cli\u003e\n\u003cstrong\u003eFunction:\u003c\/strong\u003e Ceramides bind skin cells together to form a protective, water-retaining barrier.\u003c\/li\u003e\n      \u003cli\u003e\n\u003cstrong\u003eSynergy:\u003c\/strong\u003e The cholesterol + ceramide + fatty-acid ratio mirrors healthy skin for more effective repair.\u003c\/li\u003e\n    \u003c\/ul\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"pp-ingredient\"\u003e\n    \u003ch3\u003e\n\u003cspan class=\"emoji\"\u003e💧\u003c\/span\u003e Hyaluronic Acid \u003cspan class=\"conc\"\u003eHumectant\u003c\/span\u003e \u003cspan class=\"tag\"\u003eProven\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eA humectant that draws and holds water in the skin, keeping the formula hydrating rather than drying — a frequent complaint with mineral sunscreens.\u003c\/p\u003e\n    \u003cul class=\"pp-science\"\u003e\n      \u003cli\u003e\n\u003cstrong\u003eCapacity:\u003c\/strong\u003e Binds large amounts of water to plump and soften the surface.\u003c\/li\u003e\n      \u003cli\u003e\n\u003cstrong\u003eComfort:\u003c\/strong\u003e Helps the milk feel cushioned and prevents a tight, parched finish.\u003c\/li\u003e\n    \u003c\/ul\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"pp-ingredient\"\u003e\n    \u003ch3\u003e\n\u003cspan class=\"emoji\"\u003e🌟\u003c\/span\u003e Niacinamide \u003cspan class=\"conc\"\u003eVitamin B3\u003c\/span\u003e \u003cspan class=\"tag\"\u003eProven\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eA multitasking form of vitamin B3 that supports the barrier, helps regulate oil, and can improve the look of pores and uneven tone with consistent use.\u003c\/p\u003e\n    \u003cul class=\"pp-science\"\u003e\n      \u003cli\u003e\n\u003cstrong\u003eBarrier:\u003c\/strong\u003e Helps strengthen the skin barrier and reduce water loss.\u003c\/li\u003e\n      \u003cli\u003e\n\u003cstrong\u003eTolerance:\u003c\/strong\u003e Well tolerated by most skin types, including sensitive skin.\u003c\/li\u003e\n    \u003c\/ul\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"pp-ingredient\"\u003e\n    \u003ch3\u003e\n\u003cspan class=\"emoji\"\u003e🫒\u003c\/span\u003e Squalane \u003cspan class=\"conc\"\u003eEmollient\u003c\/span\u003e \u003cspan class=\"tag\"\u003ePromising\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eA lightweight, skin-mimicking emollient that softens and helps the skin retain moisture without a greasy feel, while adding antioxidant support.\u003c\/p\u003e\n    \u003cul class=\"pp-science\"\u003e\n      \u003cli\u003e\n\u003cstrong\u003eCompatibility:\u003c\/strong\u003e Non-irritating even at high concentrations and suitable for sensitive skin.\u003c\/li\u003e\n      \u003cli\u003e\n\u003cstrong\u003eHydration:\u003c\/strong\u003e Reinforces the lipid layer to reduce moisture loss.\u003c\/li\u003e\n    \u003c\/ul\u003e\n    \u003cdiv class=\"pp-warning caution\"\u003e\n      \u003cspan class=\"icon\"\u003e⚠️\u003c\/span\u003e\n      \u003cdiv\u003ePlant-derived squalane can contain trace fatty acids, contributing to this formula's fungal-acne caution.\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"pp-accordion\"\u003e\n    \u003cinput type=\"checkbox\" id=\"pp-inci\"\u003e\n    \u003clabel for=\"pp-inci\"\u003e📋 Full Ingredients (INCI)\u003c\/label\u003e\n    \u003cdiv class=\"pp-acc-content\"\u003e\n      \u003cp\u003e\u003cstrong\u003e48 ingredients\u003c\/strong\u003e\u003c\/p\u003e\n      \u003cp style=\"font-size:0.82em;color:var(--pp-text-muted);line-height:1.7;margin:0\"\u003eZinc Oxide 20.5%, Aloe Barbadensis Leaf Juice, Butyloctyl Salicylate, Butyrospermum Parkii Oil, C12-15 Alkyl Benzoate, Camellia Sinensis Leaf Extract, Caprylhydroxamic Acid, Caprylic\/Capric Triglyceride, Carbomer, Ceramide AP, Ceramide EOP, Ceramide NP, Cholesterol, Cucumis Sativus Fruit Extract, Dihydromyrcene, Diisostearoyl Polyglyceryl-3 Dimer Dilinoleate, Dimethicone, Ethylhexyl Methoxycrylene, Ethylhexyl Olivate, Ethylhexylglycerin, Ferulic Acid, Melozone, Glycerin, Gossypium Herbaceum Seed Oil, Cinnamal, Hyaluronic Acid, Isododecane, Magnesium Sulfate, Methyl Octine Carbonate, Niacinamide, Passiflora Edulis Seed Oil, Phenoxyethanol, Phytosphingosine, Polyglyceryl-3 Oleate, Polyglyceryl-4 Diisostearate\/Polyhydroxystearate\/Sebacate, Polyglyceryl-4 Isostearate, Polyhydroxystearic Acid, Scentenal, Sodium Benzoate, Sodium Gluconate, Sodium Lauroyl Lactylate, Squalane, Sr-Hydrozoan Polypeptide-1, Tocopherol, Triethoxycaprylylsilane, Undecane, Water, Xanthan Gum.\u003c\/p\u003e\n      \u003cdiv class=\"free-list\"\u003e\n        \u003cstrong\u003eFREE FROM:\u003c\/strong\u003e Oxybenzone, Octinoxate, PEGs, Parabens, Sulfates, Harsh Drying Alcohols, Animal-Derived Ingredients (Vegan).\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-routine\" class=\"pp-title\"\u003e🔄 Where It Fits in Your Routine\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-routine\"\u003e\n    \u003cdiv class=\"pp-routine-step\"\u003e\n      \u003cdiv class=\"num\"\u003e1\u003c\/div\u003e\n      \u003cdiv class=\"name\"\u003eCleanser\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-routine-step\"\u003e\n      \u003cdiv class=\"num\"\u003e2\u003c\/div\u003e\n      \u003cdiv class=\"name\"\u003eToner \/ Essence\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-routine-step\"\u003e\n      \u003cdiv class=\"num\"\u003e3\u003c\/div\u003e\n      \u003cdiv class=\"name\"\u003eSerum\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-routine-step\"\u003e\n      \u003cdiv class=\"num\"\u003e4\u003c\/div\u003e\n      \u003cdiv class=\"name\"\u003eMoisturizer\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-routine-step current\"\u003e\n      \u003cdiv class=\"num\"\u003e5\u003c\/div\u003e\n      \u003cdiv class=\"name\"\u003eShake Shake SPF\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-routine-step\"\u003e\n      \u003cdiv class=\"num\"\u003e6\u003c\/div\u003e\n      \u003cdiv class=\"name\"\u003eMakeup (AM)\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \n  \u003cp style=\"text-align:center;color:var(--pp-text-muted);font-size:0.82em;margin-top:12px\"\u003e\n    Use it as the final morning skincare step before makeup. Because mineral filters sit on the surface, apply after moisturizer and let it set for a minute before layering anything on top.\n  \u003c\/p\u003e\n\n  \u003ch2 id=\"pp-how-to-use\" class=\"pp-title\"\u003e📝 How to Use\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-steps\"\u003e\n    \u003cdiv class=\"pp-step\"\u003e\n      \u003cdiv class=\"num\"\u003e1\u003c\/div\u003e\n      \u003cdiv\u003e\n        \u003ch4\u003eShake vigorously\u003c\/h4\u003e\n        \u003cp\u003eShake the bottle so the internal ball mixes the formula into an even, watery-milk texture.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-step\"\u003e\n      \u003cdiv class=\"num\"\u003e2\u003c\/div\u003e\n      \u003cdiv\u003e\n        \u003ch4\u003eFlip \u0026amp; dispense\u003c\/h4\u003e\n        \u003cp\u003eFlip the spout and dispense onto your fingertips. Use roughly two finger-lengths for full face coverage.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-step\"\u003e\n      \u003cdiv class=\"num\"\u003e3\u003c\/div\u003e\n      \u003cdiv\u003e\n        \u003ch4\u003eApply liberally\u003c\/h4\u003e\n        \u003cp\u003eApply 15 minutes before sun exposure using circular motions until fully blended.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-step\"\u003e\n      \u003cdiv class=\"num\"\u003e4\u003c\/div\u003e\n      \u003cdiv\u003e\n        \u003ch4\u003eReapply\u003c\/h4\u003e\n        \u003cp\u003eReapply every 2 hours, and more often if swimming or sweating. Use a water-resistant SPF for water activities.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-who-is-it-for\" class=\"pp-title\"\u003e👤 Who Is It For?\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-fit\"\u003e\n    \u003cdiv class=\"pp-fit-box yes\"\u003e\n      \u003ch4\u003e✅ Perfect for you if:\u003c\/h4\u003e\n      \u003cul\u003e\n        \u003cli\u003eYou want a 100% mineral SPF that does not feel thick or chalky\u003c\/li\u003e\n        \u003cli\u003eYou have sensitive, redness-prone or combination skin\u003c\/li\u003e\n        \u003cli\u003eYou want hydration and barrier support built into your sunscreen\u003c\/li\u003e\n        \u003cli\u003eYou are pregnant or breastfeeding and prefer mineral filters\u003c\/li\u003e\n        \u003cli\u003eYou wear sunscreen daily under makeup\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-fit-box no\"\u003e\n      \u003ch4\u003e❌ Consider alternatives if:\u003c\/h4\u003e\n      \u003cul\u003e\n        \u003cli\u003eYou are managing fungal acne (malassezia)\u003c\/li\u003e\n        \u003cli\u003eYou need a completely fragrance-free formula\u003c\/li\u003e\n        \u003cli\u003eYou want a fully matte, oil-control finish\u003c\/li\u003e\n        \u003cli\u003eYou need a large-format sunscreen for full-body use\u003c\/li\u003e\n        \u003cli\u003eYou dislike shaking a product before each use\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-skin-types\" class=\"pp-title\"\u003e🎯 Skin Type Compatibility\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-cards\"\u003e\n    \u003cdiv class=\"pp-skin-card\"\u003e\n      \u003cdiv class=\"pp-skc-head\"\u003e\n        \u003cspan class=\"pp-skc-type\"\u003eOily Skin\u003c\/span\u003e\n        \u003cspan class=\"pp-skc-rate good\"\u003e\u003cspan class=\"pp-skc-stars\"\u003e★★★★☆\u003c\/span\u003e Good\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"pp-skc-body\"\u003e\n        \u003cp class=\"pp-skc-note\"\u003eLightweight and non-greasy, though the dewy finish may read shiny on very oily skin by midday.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-skin-card\"\u003e\n      \u003cdiv class=\"pp-skc-head\"\u003e\n        \u003cspan class=\"pp-skc-type\"\u003eDry Skin\u003c\/span\u003e\n        \u003cspan class=\"pp-skc-rate excellent\"\u003e\u003cspan class=\"pp-skc-stars\"\u003e★★★★★\u003c\/span\u003e Excellent\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"pp-skc-body\"\u003e\n        \u003cp class=\"pp-skc-note\"\u003eHyaluronic acid, squalane and ceramides make this a hydrating, comfortable pick for dry skin.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-skin-card\"\u003e\n      \u003cdiv class=\"pp-skc-head\"\u003e\n        \u003cspan class=\"pp-skc-type\"\u003eCombination\u003c\/span\u003e\n        \u003cspan class=\"pp-skc-rate excellent\"\u003e\u003cspan class=\"pp-skc-stars\"\u003e★★★★★\u003c\/span\u003e Excellent\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"pp-skc-body\"\u003e\n        \u003cp class=\"pp-skc-note\"\u003eBalances hydration without heaviness, sitting well across both oily and dry zones.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-skin-card\"\u003e\n      \u003cdiv class=\"pp-skc-head\"\u003e\n        \u003cspan class=\"pp-skc-type\"\u003eSensitive\u003c\/span\u003e\n        \u003cspan class=\"pp-skc-rate good\"\u003e\u003cspan class=\"pp-skc-stars\"\u003e★★★★☆\u003c\/span\u003e Good\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"pp-skc-body\"\u003e\n        \u003cp class=\"pp-skc-note\"\u003eGentle mineral filter and soothing extracts, but added fragrance means a patch test is wise.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-skin-card\"\u003e\n      \u003cdiv class=\"pp-skc-head\"\u003e\n        \u003cspan class=\"pp-skc-type\"\u003eAcne-Prone\u003c\/span\u003e\n        \u003cspan class=\"pp-skc-rate good\"\u003e\u003cspan class=\"pp-skc-stars\"\u003e★★★★☆\u003c\/span\u003e Good\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"pp-skc-body\"\u003e\n        \u003cp class=\"pp-skc-note\"\u003eNon-comedogenic and brand-tested for acne-prone skin, but not suitable if your breakouts are fungal acne.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-results\" class=\"pp-title\"\u003e📈 Results Timeline\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-timeline\"\u003e\n    \u003cdiv class=\"pp-tl-item\"\u003e\n      \u003cspan class=\"time\"\u003eImmediately\u003c\/span\u003e\n      \u003ch4\u003eBroad-spectrum protection\u003c\/h4\u003e\n      \u003cp\u003eSPF 50 UVA\/UVB defense activates about 15 minutes after application, with a hydrating, lightly dewy finish on contact.\u003c\/p\u003e\n      \u003cspan class=\"percent\"\u003eDay 1 protection\u003c\/span\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-tl-item\"\u003e\n      \u003cspan class=\"time\"\u003e2–4 Weeks\u003c\/span\u003e\n      \u003ch4\u003eSmoother, more comfortable skin\u003c\/h4\u003e\n      \u003cp\u003eWith daily use, the ceramide and humectant blend tends to leave skin feeling more hydrated and less tight.\u003c\/p\u003e\n      \u003cspan class=\"percent\"\u003e~78% report comfort\u003c\/span\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-tl-item\"\u003e\n      \u003cspan class=\"time\"\u003e8–12 Weeks\u003c\/span\u003e\n      \u003ch4\u003eCumulative photoprotection\u003c\/h4\u003e\n      \u003cp\u003eConsistent daily SPF is the most reliable way to limit UV-driven dark spots and visible photoaging over time.\u003c\/p\u003e\n      \u003cspan class=\"percent\"\u003eLong-term benefit\u003c\/span\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-reviews\" class=\"pp-title\"\u003e⭐ Ratings by Platform\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-cards\"\u003e\n    \u003cdiv class=\"pp-review-card\"\u003e\n      \u003cdiv class=\"platform\"\u003e\n\u003cspan class=\"icon\"\u003e💅\u003c\/span\u003e Ulta\u003c\/div\u003e\n      \u003cdiv class=\"stats\"\u003e\n        \u003cdiv class=\"stat\"\u003e\n          \u003cdiv class=\"num\"\u003e\n\u003cspan class=\"stars\"\u003e★★★★½\u003c\/span\u003e 4.5\u003c\/div\u003e\n          \u003cdiv class=\"lbl\"\u003eRating\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"stat\"\u003e\n          \u003cdiv class=\"num\"\u003e530+\u003c\/div\u003e\n          \u003cdiv class=\"lbl\"\u003eReviews\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"complaint\"\u003e\n\u003cspan class=\"icon\"\u003e⚠️\u003c\/span\u003e Main complaint: Slight white cast or sheen on deeper or very oily skin\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-review-card\"\u003e\n      \u003cdiv class=\"platform\"\u003e\n\u003cspan class=\"icon\"\u003e🛒\u003c\/span\u003e Amazon\u003c\/div\u003e\n      \u003cdiv class=\"stats\"\u003e\n        \u003cdiv class=\"stat\"\u003e\n          \u003cdiv class=\"num\"\u003e\n\u003cspan class=\"stars\"\u003e★★★★☆\u003c\/span\u003e 4.3\u003c\/div\u003e\n          \u003cdiv class=\"lbl\"\u003eRating\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"stat\"\u003e\n          \u003cdiv class=\"num\"\u003e1,000+\u003c\/div\u003e\n          \u003cdiv class=\"lbl\"\u003eReviews\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"complaint\"\u003e\n\u003cspan class=\"icon\"\u003e⚠️\u003c\/span\u003e Main complaint: Small 1.7 oz size relative to the price\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-review-card\"\u003e\n      \u003cdiv class=\"platform\"\u003e\n\u003cspan class=\"icon\"\u003e🏠\u003c\/span\u003e Vacation.inc\u003c\/div\u003e\n      \u003cdiv class=\"stats\"\u003e\n        \u003cdiv class=\"stat\"\u003e\n          \u003cdiv class=\"num\"\u003e\n\u003cspan class=\"stars\"\u003e★★★★½\u003c\/span\u003e 4.6\u003c\/div\u003e\n          \u003cdiv class=\"lbl\"\u003eRating\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"stat\"\u003e\n          \u003cdiv class=\"num\"\u003e900+\u003c\/div\u003e\n          \u003cdiv class=\"lbl\"\u003eReviews\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"complaint\"\u003e\n\u003cspan class=\"icon\"\u003e⚠️\u003c\/span\u003e Main complaint: Needs vigorous shaking or it can dispense unevenly\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-review-card\"\u003e\n      \u003cdiv class=\"platform\"\u003e\n\u003cspan class=\"icon\"\u003e✨\u003c\/span\u003e Dermstore\u003c\/div\u003e\n      \u003cdiv class=\"stats\"\u003e\n        \u003cdiv class=\"stat\"\u003e\n          \u003cdiv class=\"num\"\u003e\n\u003cspan class=\"stars\"\u003e★★★★☆\u003c\/span\u003e 4.4\u003c\/div\u003e\n          \u003cdiv class=\"lbl\"\u003eRating\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"stat\"\u003e\n          \u003cdiv class=\"num\"\u003e150+\u003c\/div\u003e\n          \u003cdiv class=\"lbl\"\u003eReviews\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"complaint\"\u003e\n\u003cspan class=\"icon\"\u003e⚠️\u003c\/span\u003e Main complaint: Light fragrance not ideal for fragrance-free seekers\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-pros-cons\" class=\"pp-title\"\u003e⚖️ Pros \u0026amp; Cons\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-proscons\"\u003e\n    \u003cdiv class=\"pp-pros\"\u003e\n      \u003ch4\u003e✅ Praised\u003c\/h4\u003e\n      \u003cul\u003e\n        \u003cli\u003eGenuinely lightweight, watery-milk texture for a mineral SPF\u003c\/li\u003e\n        \u003cli\u003eMinimal white cast compared to most zinc sunscreens\u003c\/li\u003e\n        \u003cli\u003eHydrating, barrier-supporting skincare actives\u003c\/li\u003e\n        \u003cli\u003eLayers smoothly under makeup without pilling\u003c\/li\u003e\n        \u003cli\u003eFun, easy-to-use shakerball packaging\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-cons\"\u003e\n      \u003ch4\u003e❌ Criticized\u003c\/h4\u003e\n      \u003cul\u003e\n        \u003cli\u003eNot fungal-acne (malassezia) safe\u003c\/li\u003e\n        \u003cli\u003eContains fragrance, including an EU allergen\u003c\/li\u003e\n        \u003cli\u003eSmall 1.7 oz bottle for daily-reapply use\u003c\/li\u003e\n        \u003cli\u003eCan leave a faint cast on deeper skin tones\u003c\/li\u003e\n        \u003cli\u003eRequires shaking before every application\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-dupes\" class=\"pp-title\"\u003e💰 Budget-Friendly Alternatives (Dupes)\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-cards\"\u003e\n    \u003cdiv class=\"pp-dupe-card\"\u003e\n      \u003cspan class=\"match high\"\u003e82% Match\u003c\/span\u003e\n      \u003cdiv class=\"product-name\"\u003eCeraVe Hydrating Mineral Sunscreen SPF 30 (Face)\u003c\/div\u003e\n      \u003cdiv class=\"price\"\u003e\n        \u003cspan class=\"amount\"\u003e~$16\u003c\/span\u003e\n        \u003cspan class=\"tag budget\"\u003eBudget Pick\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cp class=\"diff\"\u003e100% mineral with the same ceramides + hyaluronic acid focus, also fragrance-free. Lower SPF 30, thicker texture and a heavier cast, but the closest barrier-friendly mineral dupe.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-dupe-card\"\u003e\n      \u003cspan class=\"match medium\"\u003e68% Match\u003c\/span\u003e\n      \u003cdiv class=\"product-name\"\u003eThe Ordinary Mineral UV Filters SPF 30 with Antioxidants\u003c\/div\u003e\n      \u003cdiv class=\"price\"\u003e\n        \u003cspan class=\"amount\"\u003e~$17\u003c\/span\u003e\n        \u003cspan class=\"tag budget\"\u003eBudget Pick\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cp class=\"diff\"\u003eAffordable 100% mineral filter with antioxidants. More noticeable white cast and a denser feel, and it lacks the ceramide\/peptide barrier complex.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-dupe-card\"\u003e\n      \u003cspan class=\"match medium\"\u003e70% Match\u003c\/span\u003e\n      \u003cdiv class=\"product-name\"\u003eNaturium Dew-Glow Mineral Sunscreen SPF 50\u003c\/div\u003e\n      \u003cdiv class=\"price\"\u003e\n        \u003cspan class=\"amount\"\u003e~$25\u003c\/span\u003e\n        \u003cspan class=\"tag similar\"\u003eSimilar Price\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cp class=\"diff\"\u003eMineral SPF 50 with a hydrating, dewy finish much like Shake Shake. Similar glow and price point, though it uses a standard tube rather than the shakerball format.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-compare\" class=\"pp-title\"\u003e🔄 Comparison with Competitors\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-compare-grid\"\u003e\n    \u003cdiv class=\"pp-compare-card featured\"\u003e\n      \u003cdiv class=\"card-header\"\u003e\n        \u003ch4\u003eVacation Shake Shake SPF 50 (Featured)\u003c\/h4\u003e\n        \u003cspan class=\"price\"\u003e$25–27\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"card-body\"\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eSPF \/ Filter\u003c\/span\u003e\n          \u003cspan class=\"value good\"\u003eSPF 50 · Zinc Oxide 20.5%\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eFinish\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003eNatural \/ lightly dewy\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eTint\u003c\/span\u003e\n          \u003cspan class=\"value neutral\"\u003eUntinted\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eFragrance\u003c\/span\u003e\n          \u003cspan class=\"value bad\"\u003eContains fragrance\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eSize\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003e1.7 oz \/ 50ml\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-compare-card\"\u003e\n      \u003cdiv class=\"card-header\"\u003e\n        \u003ch4\u003eTower 28 SunnyDays Tinted SPF 30\u003c\/h4\u003e\n        \u003cspan class=\"price\"\u003e$32\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"card-body\"\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eSPF \/ Filter\u003c\/span\u003e\n          \u003cspan class=\"value neutral\"\u003eSPF 30 · 100% Zinc\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eFinish\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003eTinted, natural\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eTint\u003c\/span\u003e\n          \u003cspan class=\"value good\"\u003e17 shades\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eFragrance\u003c\/span\u003e\n          \u003cspan class=\"value good\"\u003eFragrance-free\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eSize\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003e1 oz \/ 30ml\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-compare-card\"\u003e\n      \u003cdiv class=\"card-header\"\u003e\n        \u003ch4\u003eKosas DreamBeam SPF 40\u003c\/h4\u003e\n        \u003cspan class=\"price\"\u003e~$42\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"card-body\"\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eSPF \/ Filter\u003c\/span\u003e\n          \u003cspan class=\"value neutral\"\u003eSPF 40 · Mineral\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eFinish\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003eSmooth, comfortable\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eTint\u003c\/span\u003e\n          \u003cspan class=\"value neutral\"\u003eUntinted\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eFragrance\u003c\/span\u003e\n          \u003cspan class=\"value good\"\u003eFragrance-free\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eSize\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003e1.69 oz \/ 50ml\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-compare-card\"\u003e\n      \u003cdiv class=\"card-header\"\u003e\n        \u003ch4\u003eSaie Sunvisor SPF 35\u003c\/h4\u003e\n        \u003cspan class=\"price\"\u003e~$36\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"card-body\"\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eSPF \/ Filter\u003c\/span\u003e\n          \u003cspan class=\"value neutral\"\u003eSPF 35 · Mineral\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eFinish\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003eRadiant, dewy\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eTint\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003eSheer universal\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eFragrance\u003c\/span\u003e\n          \u003cspan class=\"value good\"\u003eFragrance-free\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"pp-compare-row\"\u003e\n          \u003cspan class=\"label\"\u003eSize\u003c\/span\u003e\n          \u003cspan class=\"value\"\u003e1.7 oz \/ 50ml\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-storage\" class=\"pp-title\"\u003e📦 Storage \u0026amp; Shelf Life\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-safety\"\u003e\n    \u003cdiv class=\"pp-safety-item info\"\u003e\n      \u003cspan class=\"icon\"\u003e📅\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003ePeriod After Opening (PAO)\u003c\/strong\u003e\n        \u003cp\u003e12 months after opening\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-safety-item info\"\u003e\n      \u003cspan class=\"icon\"\u003e🏠\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003eStorage\u003c\/strong\u003e\n        \u003cp\u003eStore in a cool, dry place away from direct sunlight and extreme heat to keep the SPF stable.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-safety-item info\"\u003e\n      \u003cspan class=\"icon\"\u003e📦\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003ePackaging\u003c\/strong\u003e\n        \u003cp\u003eSignature \"shakerball\" flip-spout bottle with an internal mixing ball.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-safety-item info\"\u003e\n      \u003cspan class=\"icon\"\u003e✈️\u003c\/span\u003e\n      \u003cdiv\u003e\n        \u003cstrong\u003eTravel Friendly\u003c\/strong\u003e\n        \u003cp\u003eYes — 1.7 oz \/ 50ml is TSA carry-on compliant; a 0.5 oz travel size is also available.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ch2 id=\"pp-faq\" class=\"pp-title\"\u003e❓ Frequently Asked Questions\u003c\/h2\u003e\n  \n  \u003cdiv class=\"pp-faq\"\u003e\n    \u003cdiv class=\"pp-faq-item\"\u003e\n      \u003cinput type=\"checkbox\" id=\"faq1\"\u003e\n      \u003clabel for=\"faq1\"\u003eIs Shake Shake SPF 50 Mineral Milk pregnancy and breastfeeding safe?\u003c\/label\u003e\n      \u003cdiv class=\"pp-faq-answer\"\u003e\n        \u003cp\u003eIt is generally considered a pregnancy- and breastfeeding-friendly choice because it relies on mineral zinc oxide rather than chemical UV filters such as oxybenzone, and it contains no retinoids or hydroquinone. As with any product during pregnancy, confirm with your OB-GYN or dermatologist before adding it to your routine.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-faq-item\"\u003e\n      \u003cinput type=\"checkbox\" id=\"faq2\"\u003e\n      \u003clabel for=\"faq2\"\u003eIs Shake Shake SPF 50 fungal acne (malassezia) safe?\u003c\/label\u003e\n      \u003cdiv class=\"pp-faq-answer\"\u003e\n        \u003cp\u003eNo. The formula contains several esters and plant oils — including polyglyceryl esters, ethylhexyl olivate, passionfruit seed oil and cottonseed oil — that can feed malassezia. If you are actively managing fungal acne, a stripped-back, ester-free mineral sunscreen is a safer pick.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-faq-item\"\u003e\n      \u003cinput type=\"checkbox\" id=\"faq3\"\u003e\n      \u003clabel for=\"faq3\"\u003eCan I use Shake Shake SPF 50 with retinol, vitamin C, AHA or BHA?\u003c\/label\u003e\n      \u003cdiv class=\"pp-faq-answer\"\u003e\n        \u003cp\u003eYes. As a final-step mineral sunscreen it layers comfortably over actives you apply earlier in your routine. In fact, daily SPF is especially important when using retinol, vitamin C or exfoliating acids, since those ingredients can make skin more sensitive to the sun.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-faq-item\"\u003e\n      \u003cinput type=\"checkbox\" id=\"faq4\"\u003e\n      \u003clabel for=\"faq4\"\u003eWhat skin type is Shake Shake SPF 50 best for?\u003c\/label\u003e\n      \u003cdiv class=\"pp-faq-answer\"\u003e\n        \u003cp\u003eIt suits most skin types but shines on dry, combination and sensitive skin thanks to its hydrating, barrier-supporting blend and lightweight feel. Oily skin can use it happily, though the dewy finish may need a setting powder. It is not recommended for fungal-acne-prone skin.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-faq-item\"\u003e\n      \u003cinput type=\"checkbox\" id=\"faq5\"\u003e\n      \u003clabel for=\"faq5\"\u003eHow long until I see results from Shake Shake SPF 50?\u003c\/label\u003e\n      \u003cdiv class=\"pp-faq-answer\"\u003e\n        \u003cp\u003eUV protection is immediate, roughly 15 minutes after application. The hydration and barrier benefits build over a few weeks of daily use, while the long-term payoff — reduced UV-related dark spots and photoaging — comes from consistent daily wear over months.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-faq-item\"\u003e\n      \u003cinput type=\"checkbox\" id=\"faq6\"\u003e\n      \u003clabel for=\"faq6\"\u003eWhere does Shake Shake SPF 50 go in my skincare routine?\u003c\/label\u003e\n      \u003cdiv class=\"pp-faq-answer\"\u003e\n        \u003cp\u003eIt is the last step of your morning skincare, applied after cleanser, any toner or serum, and moisturizer, and before makeup. Mineral filters sit on the surface, so let it set for a minute before layering foundation on top.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-faq-item\"\u003e\n      \u003cinput type=\"checkbox\" id=\"faq7\"\u003e\n      \u003clabel for=\"faq7\"\u003eIs Shake Shake SPF 50 comedogenic \/ will it clog pores?\u003c\/label\u003e\n      \u003cdiv class=\"pp-faq-answer\"\u003e\n        \u003cp\u003eIt is formulated and brand-tested to be non-comedogenic, earning a low comedogenic rating of around 2 out of 5. It does contain a few lightweight oils and emollients, so very congestion-prone skin should monitor how it responds — but most users find it pore-friendly.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"pp-faq-item\"\u003e\n      \u003cinput type=\"checkbox\" id=\"faq8\"\u003e\n      \u003clabel for=\"faq8\"\u003eHow long does Shake Shake SPF 50 last after opening?\u003c\/label\u003e\n      \u003cdiv class=\"pp-faq-answer\"\u003e\n        \u003cp\u003eUse it within about 12 months of opening for reliable sun protection. As a sunscreen it also carries a printed expiration date — always follow the earlier of the two, and store it cool and out of direct sun.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"pp-verdict\"\u003e\n    \u003cdiv class=\"stars\"\u003e★★★★☆\u003c\/div\u003e\n    \u003cdiv class=\"score\"\u003e4.4 out of 5\u003c\/div\u003e\n    \u003cp class=\"text\"\u003e\n      \u003cstrong\u003eVerdict:\u003c\/strong\u003e Vacation's Shake Shake SPF 50 Mineral Milk is one of the more wearable 100% mineral face sunscreens available, pairing 20.5% non-nano zinc oxide with a genuinely lightweight, hydrating, barrier-supporting formula and a clever shakerball bottle that keeps application streak-free. It is an excellent daily pick for dry, combination and sensitive skin, and a pregnancy-friendly, reef-conscious option. The main trade-offs are the added fragrance, the small 1.7 oz size, and the fact that it is not malassezia-safe — so those managing fungal acne or seeking fragrance-free formulas should look elsewhere. For everyone else, it is a high-performing, skincare-forward SPF that is easy to wear every day.\n    \u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n","brand":"Vacation","offers":[{"title":"Default Title","offer_id":52509389095255,"sku":null,"price":270.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0907\/5028\/8215\/files\/9v2ruol3hf0ksdikg28ak8d54scs.jpg?v=1770950075","url":"https:\/\/www.skincarisma.com\/products\/shake-shake-spf-50-mineral-milk","provider":"Skincarisma","version":"1.0","type":"link"}