/* EMD Landing Page — generated by nutra-factory */
:root {
    --color-primary: #123c2e;
    --color-primary-dark: #073929;
    --color-accent: #d4a017;
    --color-bg: #ffffff;
    --color-bg-light: #f8f9fa;
    --color-text: #1a1a2e;
    --color-text-muted: #6b7280;
    --color-border: #e5e7eb;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --max-width: 1100px;
    --radius: 12px;
    --shadow: 0 2px 8px rgba(0,0,0,0.06);
    --shadow-lg: 0 8px 30px rgba(0,0,0,0.1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
    font-family: var(--font-body);
    color: var(--color-text);
    background: var(--color-bg);
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}

.jf26-wrap { max-width: var(--max-width); margin: 0 auto; padding: 0 20px; }

a { color: var(--color-primary); text-decoration: none; }
a:hover { text-decoration: underline; }

img { max-width: 100%; height: auto; display: block; }

h1, h2, h3, h4 { line-height: 1.3; }
h2 { font-size: 1.75rem; margin-bottom: 1rem; text-align: center; }
h3 { font-size: 1.2rem; margin-bottom: 0.5rem; }

.section { padding: 60px 0; }
.bg-light { background: var(--color-bg-light); }

/* --- Disclaimer bar --- */
.disclaimer-bar {
    background: #fef3cd;
    color: #856404;
    padding: 8px 0;
    font-size: 0.8rem;
    text-align: center;
    border-bottom: 1px solid #ffc107;
}
.disclaimer-bar strong { font-weight: 600; }

/* --- Header --- */
.site-header {
    background: var(--color-bg);
    border-bottom: 1px solid var(--color-border);
    padding: 16px 0;
    position: sticky;
    top: 0;
    z-index: 100;
}
.site-header .jf26-wrap { display: flex; align-items: center; justify-content: space-between; }
.logo { font-weight: 800; font-size: 1.3rem; color: var(--color-text); }
.logo:hover { text-decoration: none; }
.site-header nav { display: flex; gap: 20px; }
.site-header nav a { color: var(--color-text-muted); font-size: 0.9rem; font-weight: 500; }
.site-header nav a:hover { color: var(--color-primary); text-decoration: none; }

/* --- Hero --- */
.hero {
    background: linear-gradient(135deg, var(--color-bg-light) 0%, var(--color-bg) 100%);
    padding: 60px 0 40px;
}
.hero-content { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.jf26-hero-pill {
    display: inline-block;
    background: var(--color-primary);
    color: #fff;
    padding: 4px 14px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    margin-bottom: 16px;
}
.hero h1 { font-size: 2.2rem; margin-bottom: 16px; }
.hero h1 .accent { color: var(--color-primary); }
.hero-sub { font-size: 1.1rem; color: var(--color-text-muted); margin-bottom: 20px; }
.hero-rating { display: flex; align-items: center; gap: 10px; }
.stars { color: #f59e0b; font-size: 1.3rem; letter-spacing: 2px; }
.hero-image img { border-radius: var(--radius); box-shadow: var(--shadow-lg); }

/* --- CTA buttons --- */
.jf26-action {
    display: inline-block;
    background: var(--color-primary);
    color: #fff;
    padding: 14px 32px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    transition: background 0.2s, transform 0.2s;
}
.jf26-action:hover { background: var(--color-primary-dark); transform: translateY(-1px); text-decoration: none; }
.jf26-action.jf26-action-small { padding: 10px 24px; font-size: 0.9rem; }
.jf26-action.jf26-action-large { padding: 18px 40px; font-size: 1.1rem; }
.jf26-action.jf26-action-light { background: #fff; color: var(--color-primary); }
.jf26-action.jf26-action-light:hover { background: #f0f0f0; }

/* --- Verdict box --- */
.verdict-box {
    background: var(--color-bg-light);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 30px;
    text-align: center;
}
.verdict-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.verdict-label { font-weight: 700; font-size: 1.1rem; }
.verdict-score { font-size: 2rem; font-weight: 800; color: var(--color-primary); }
.verdict-score small { font-size: 1rem; color: var(--color-text-muted); }
.verdict-box p { text-align: left; margin-bottom: 20px; }

/* --- Ingredients grid --- */
.ingredients-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin-top: 30px;
}
.jf26-ingredient-panel {
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 24px;
    transition: box-shadow 0.2s;
}
.jf26-ingredient-panel:hover { box-shadow: var(--shadow-lg); }
.ing-icon { font-size: 2rem; margin-bottom: 10px; }
.jf26-ingredient-panel h3 { font-size: 1.05rem; }
.jf26-ingredient-panel p { color: var(--color-text-muted); font-size: 0.9rem; margin-top: 8px; }

/* --- CTA banner --- */
.cta-banner {
    background: var(--color-primary);
    color: #fff;
    padding: 24px 0;
    text-align: center;
}
.cta-banner p { margin-bottom: 16px; font-size: 1.1rem; }
.cta-banner strong { font-weight: 700; }

/* --- Benefits grid --- */
.benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 24px;
    margin: 30px 0;
}
.benefit {
    background: var(--color-bg);
    border-radius: var(--radius);
    padding: 24px;
    border: 1px solid var(--color-border);
}
.benefit-icon { font-size: 2rem; margin-bottom: 10px; }
.benefit p { color: var(--color-text-muted); font-size: 0.9rem; margin-top: 8px; }

/* --- Expectation timeline --- */
.expectation-box {
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 24px;
    margin-top: 30px;
}
.expectation-box h3 { margin-bottom: 16px; }
.jf26-expect-line {
    display: flex;
    gap: 16px;
    padding: 10px 0;
    border-bottom: 1px solid var(--color-border);
    font-size: 0.95rem;
}
.jf26-expect-line:last-child { border-bottom: none; }
.expect-time { font-weight: 700; min-width: 120px; color: var(--color-primary); }

/* --- Reviews --- */
.reviews-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
    margin: 30px 0;
}
.jf26-review-panel {
    background: var(--color-bg-light);
    border-radius: var(--radius);
    padding: 24px;
    border: 1px solid var(--color-border);
}
.review-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.review-stars { color: #f59e0b; font-size: 1.1rem; letter-spacing: 1px; }
.review-verified { font-size: 0.75rem; color: var(--color-text-muted); }
.review-text { font-style: italic; color: var(--color-text); margin-bottom: 12px; font-size: 0.95rem; }
.review-author { font-size: 0.85rem; color: var(--color-text-muted); }
.reviews-summary {
    display: flex;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
    padding: 24px;
    background: var(--color-bg-light);
    border-radius: var(--radius);
}
.rs-item { text-align: center; }
.rs-item strong { display: block; font-size: 1.5rem; color: var(--color-primary); }

/* --- Pricing --- */
.pricing-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 30px 0;
    align-items: start;
}
.jf26-pricing-panel {
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 30px 24px;
    text-align: center;
    position: relative;
}
.jf26-pricing-panel.best {
    border: 2px solid var(--color-primary);
    box-shadow: var(--shadow-lg);
    transform: scale(1.05);
}
.jf26-pricing-pill {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--color-primary);
    color: #fff;
    padding: 4px 16px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 700;
    white-space: nowrap;
}
.pricing-name { font-weight: 700; font-size: 1.1rem; margin-bottom: 4px; }
.pricing-duration { color: var(--color-text-muted); font-size: 0.85rem; margin-bottom: 16px; }
.pricing-price { font-size: 2rem; font-weight: 800; color: var(--color-primary); }
.pricing-price small { font-size: 0.9rem; color: var(--color-text-muted); font-weight: 400; }
.pricing-detail { margin: 8px 0; font-size: 0.85rem; color: var(--color-text-muted); }
.pricing-detail strong { color: var(--color-primary); }
.pricing-perday { font-size: 0.8rem; color: var(--color-text-muted); margin-bottom: 16px; }

/* --- FAQ --- */
.faq-list { max-width: 720px; margin: 30px auto 0; }
.faq-item {
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    margin-bottom: 10px;
    overflow: hidden;
}
.faq-item summary {
    padding: 16px 20px;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.faq-item summary::after { content: '+'; font-size: 1.3rem; color: var(--color-text-muted); }
.faq-item[open] summary::after { content: '−'; }
.faq-item p { padding: 0 20px 16px; color: var(--color-text-muted); font-size: 0.95rem; }

/* --- CTA final --- */
.cta-final { text-align: center; background: linear-gradient(135deg, var(--color-bg-light), var(--color-bg)); }
.cta-final p { max-width: 700px; margin: 0 auto 20px; }
.cta-note { font-size: 0.85rem; color: var(--color-text-muted); margin-top: 12px; }

/* --- Disclaimer/Transparency --- */
.disclaimer-section { background: var(--color-bg-light); }
.disclaimer-content { max-width: 720px; margin: 0 auto; }
.disclaimer-content p { margin-bottom: 12px; font-size: 0.9rem; color: var(--color-text-muted); }

/* --- Guarantee --- */
.guarantee-box {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    padding: 24px;
    margin-top: 24px;
}
.guarantee-icon { font-size: 2rem; }
.guarantee-box p { font-size: 0.9rem; color: var(--color-text-muted); margin-top: 4px; }

/* --- Footer --- */
.site-footer {
    background: var(--color-text);
    color: #d1d5db;
    padding: 48px 0 24px;
}
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 40px; margin-bottom: 30px; }
.footer-logo { font-weight: 800; font-size: 1.2rem; color: #fff; margin-bottom: 8px; }
.footer-desc { font-size: 0.85rem; line-height: 1.5; }
.site-footer h4 { color: #fff; font-size: 0.9rem; margin-bottom: 12px; }
.site-footer a { display: block; color: #d1d5db; font-size: 0.85rem; margin-bottom: 6px; }
.site-footer a:hover { color: #fff; text-decoration: none; }
.footer-bottom { border-top: 1px solid #374151; padding-top: 20px; text-align: center; font-size: 0.8rem; }
.footer-disclaimer { margin-top: 8px; font-size: 0.75rem; color: #9ca3af; }

/* --- Mobile CTA (fixed bottom) --- */
.mobile-cta {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
    background: var(--color-bg);
    padding: 12px 20px;
    box-shadow: 0 -4px 20px rgba(0,0,0,0.1);
}
.mobile-cta a {
    display: block;
    background: var(--color-primary);
    color: #fff;
    text-align: center;
    padding: 14px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    animation: pulse 2s cubic-bezier(0.25, 0, 0, 1) 1s infinite;
    box-shadow: 0 0 0 0 var(--color-primary);
}
.mobile-cta a:hover { text-decoration: none; }

@keyframes pulse {
    to { box-shadow: 0 0 0 18px transparent; }
}

/* --- Mobile responsive --- */
@media (max-width: 768px) {
    .site-header nav { display: none; }
    .hero-content { grid-template-columns: 1fr; text-align: center; }
    .hero h1 { font-size: 1.6rem; }
    .hero-rating { justify-content: center; }
    .pricing-grid { grid-template-columns: 1fr; }
    .jf26-pricing-panel.best { transform: none; }
    .footer-grid { grid-template-columns: 1fr; gap: 24px; }
    .reviews-summary { gap: 20px; }
    .verdict-header { flex-direction: column; gap: 8px; }
    .mobile-cta { display: block; }
    body { padding-bottom: 70px; }
    h2 { font-size: 1.4rem; }
    .jf26-expect-line { flex-direction: column; gap: 4px; }
    .expect-time { min-width: auto; }
}

@media (max-width: 480px) {
    .hero h1 { font-size: 1.35rem; }
    .hero-sub { font-size: 0.95rem; }
    .section { padding: 40px 0; }
    .benefits-grid { grid-template-columns: 1fr; }
}


/* JellyFil AU premium QA patch v1.2.0 */
.jf26-seo-source{order:99;position:absolute;left:-9999px;max-width:1px;max-height:1px;overflow:hidden;}
.hero-image img{max-width:520px;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 22px 42px rgba(18,60,46,.22));}
.source-dot{width:13px;height:13px;border-radius:999px;background:#20a56b;box-shadow:0 0 0 7px rgba(32,165,107,.15);}
.jf26-trust-strip{background:#f6fbf5;padding:22px 0;border-top:1px solid rgba(18,60,46,.08);border-bottom:1px solid rgba(18,60,46,.08);}
.jf26-trust-inner{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap;}
.jf26-trust-inner img{max-height:92px;max-width:170px;object-fit:contain;background:#fff;border-radius:18px;padding:10px;box-shadow:0 14px 32px rgba(18,60,46,.10);}
.jf26-ingredient-panel .ing-icon{text-transform:capitalize;font-weight:800;color:#146c43;}
@media(max-width:768px){.jf26-trust-inner{gap:12px}.jf26-trust-inner img{max-width:43%;max-height:86px}.hero-image img{max-width:360px}.site-header nav{gap:10px;overflow-x:auto}.site-header nav a{white-space:nowrap}}


/* JellyFil AU premium aesthetic pass v1.2.0 */
:root{--jf-green:#123c2e;--jf-mint:#e8f6ec;--jf-lime:#ccf36f;--jf-ink:#10231b;--jf-muted:#5d7066;--jf-card:#ffffff;--jf-gold:#d8a849;}
body{background:linear-gradient(180deg,#f7fbf4 0%,#ffffff 38%,#f5faf4 100%);color:var(--jf-ink);}
.jf26-wrap{width:min(1120px,calc(100% - 34px));margin-inline:auto;}
.site-header{backdrop-filter:blur(18px);background:rgba(247,251,244,.82)!important;border-bottom:1px solid rgba(18,60,46,.10);}
.logo{letter-spacing:-.04em;font-weight:900;color:var(--jf-green)!important;}
.site-header nav a{color:#244f3f!important;font-weight:750;text-decoration:none;padding:10px 12px;border-radius:999px;transition:.18s ease;}
.site-header nav a:hover{background:rgba(18,60,46,.08);transform:translateY(-1px);}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 74% 28%,rgba(204,243,111,.55),transparent 26%),linear-gradient(135deg,#eef9ec 0%,#ffffff 54%,#e5f4e8 100%)!important;}
.hero:before{content:"";position:absolute;inset:40px auto auto -90px;width:260px;height:260px;border-radius:50%;background:rgba(18,60,46,.08);filter:blur(8px)}
.hero-content{align-items:center;gap:54px;}
.jf26-hero-pill,.jf26-kicker{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(18,60,46,.14);background:#fff;color:#174734;border-radius:999px;padding:9px 14px;font-weight:850;box-shadow:0 8px 28px rgba(18,60,46,.08);}
.hero h1{font-size:clamp(42px,6vw,74px);line-height:.92;letter-spacing:-.065em;color:#0f2f24;margin-top:18px;}
.hero-sub{font-size:clamp(17px,2vw,22px);line-height:1.55;color:#40574d;max-width:650px;}
.hero-rating{background:#fff;border:1px solid rgba(18,60,46,.11);padding:13px 16px;border-radius:18px;width:fit-content;box-shadow:0 18px 45px rgba(18,60,46,.10);}
.hero-image{position:relative;background:linear-gradient(145deg,#ffffff,#eef8e9);border:1px solid rgba(18,60,46,.10);border-radius:38px;padding:22px;box-shadow:0 28px 70px rgba(18,60,46,.18);}
.hero-image:after{content:"Apify source assets";position:absolute;right:20px;bottom:16px;background:#123c2e;color:#fff;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:850;letter-spacing:.02em;}
.jf26-action{background:linear-gradient(135deg,#123c2e,#287a58)!important;border:0!important;border-radius:999px!important;box-shadow:0 16px 30px rgba(18,60,46,.22)!important;font-weight:900!important;letter-spacing:-.01em;}
.jf26-action:hover{transform:translateY(-2px);filter:saturate(1.08)}
.jf26-action-light{background:#ffffff!important;color:#123c2e!important;}
.section{padding:84px 0;}
.section h2{font-size:clamp(32px,4vw,52px);letter-spacing:-.055em;line-height:1;color:#112d23;margin-bottom:18px;}
.verdict-box,.jf26-ingredient-panel,.benefit,.jf26-review-panel,.jf26-pricing-panel,.faq-item,.expectation-box{border:1px solid rgba(18,60,46,.10)!important;border-radius:28px!important;background:rgba(255,255,255,.88)!important;box-shadow:0 18px 50px rgba(18,60,46,.08)!important;}
.verdict-box{background:linear-gradient(145deg,#ffffff,#f1faef)!important;}
.jf26-product-story{background:#0f2f24;color:#f7fbf4;position:relative;overflow:hidden;}
.jf26-product-story:before{content:"";position:absolute;inset:-120px -120px auto auto;width:360px;height:360px;border-radius:50%;background:rgba(204,243,111,.20);filter:blur(6px)}
.jf26-story-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:38px;align-items:center;position:relative;z-index:1;}
.jf26-story-copy h2{color:#fff;margin:18px 0 16px}.jf26-story-copy p,.jf26-story-copy li{color:#dcebe1;font-size:17px;line-height:1.65}.jf26-story-copy ul{padding-left:20px;margin-top:18px;}
.jf26-pack-stage{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:end;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:32px;padding:20px;backdrop-filter:blur(10px)}
.jf26-pack-stage img{width:100%;height:auto;object-fit:contain;background:#fff;border-radius:20px;padding:8px;box-shadow:0 16px 35px rgba(0,0,0,.18);}
.jf26-trust-strip{background:linear-gradient(90deg,#f8fff3,#edf8ea)!important;}
.benefits-grid,.ingredients-grid,.reviews-grid{gap:22px!important;}
.expectation-box{margin-top:34px;background:linear-gradient(145deg,#123c2e,#1e6b4d)!important;color:#fff!important;}
.expectation-box h3,.jf26-expect-line span{color:#fff!important}.jf26-expect-line{border-color:rgba(255,255,255,.18)!important;}
.review-stars{display:none!important}.review-verified{background:#e8f6ec!important;color:#123c2e!important;border-radius:999px;padding:7px 10px;font-weight:850;}
.reviews-summary.jf26-source-metrics{background:#f4fbf1;border:1px solid rgba(18,60,46,.09);border-radius:26px;padding:18px;margin-top:28px;}
.pricing-grid{align-items:stretch;gap:24px!important;}.jf26-pricing-panel{position:relative;overflow:hidden;padding-top:20px!important;}.jf26-pricing-panel.best{transform:translateY(-10px);border-color:rgba(216,168,73,.45)!important;box-shadow:0 26px 70px rgba(216,168,73,.18)!important;}
.pricing-img{display:block;width:100%;height:170px;object-fit:contain;margin:4px auto 18px;background:#f7fbf4;border-radius:22px;padding:10px;}
.jf26-pricing-pill{background:linear-gradient(135deg,#d8a849,#f6d879)!important;color:#38280a!important;border-radius:999px!important;font-weight:900!important;}
.disclaimer-section{background:#f8fbf6!important;}.disclaimer-content{border-left:4px solid #123c2e;padding-left:20px;}
.site-footer{background:#0d2a20!important;color:#dcebe1!important}.site-footer a{color:#f7fbf4!important}.footer-logo{color:#fff!important;font-weight:900;}
.legal-page{max-width:760px}.legal-page h1{font-size:48px;letter-spacing:-.05em}.legal-page h2{font-size:24px;margin-top:34px;color:#123c2e;}
@media(max-width:860px){.jf26-story-grid{grid-template-columns:1fr}.hero-content{gap:24px}.hero-image:after{position:static;display:inline-block;margin-top:10px}.jf26-pricing-panel.best{transform:none}.section{padding:58px 0}.jf26-pack-stage{grid-template-columns:1fr 1fr 1fr;padding:12px}.hero h1{font-size:44px}}
@media(max-width:560px){.jf26-wrap{width:min(100% - 22px,1120px)}.site-header .jf26-wrap{gap:8px}.site-header nav{max-width:100%;padding-bottom:6px}.hero-image{border-radius:26px;padding:12px}.pricing-img{height:130px}.jf26-pack-stage{gap:8px}.jf26-trust-inner img{max-width:42%;}.mobile-cta{box-shadow:0 -14px 28px rgba(18,60,46,.16)}}

/* JellyFil AU consumer microfix v1.3.1 */
body{padding-bottom:86px;}
.hero-rating span{white-space:normal;}
@media(max-width:560px){.hero-rating{display:grid!important;grid-template-columns:1fr;gap:8px;width:100%;}.hero-rating span{display:block;text-align:center}.hero h1{font-size:40px;line-height:.98}.mobile-cta{padding:10px 14px}.mobile-cta a{min-height:48px}}

/* JellyFil AU ingredient/posology correction v1.4.0 */
.jf26-formula-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.jf26-label-box{margin-top:30px;}
@media(max-width:760px){.jf26-formula-grid{grid-template-columns:1fr}.jf26-label-box{margin-top:20px}}
