:root{
        --bg:#f8f3ea;
        --surface:#fffdfa;
        --surface-2:#fbf7ef;
        --surface-3:#fff8ee;
        --text:#2c2318;
        --text-strong:#302517;
        --muted:#7c6b57;
        --line:#e9dfd0;
        --line-strong:#decfb7;
        --primary:#b88435;
        --primary-2:#946625;
        --brand:#a97730;
        --brand-2:#c79a4a;
        --brand-soft:#fbefda;
        --soft-1:#fff6e8;
        --soft-2:#fff8ef;
        --soft-3:#f7ecda;
        --shadow-soft:0 10px 24px rgba(148,102,37,.10);
        --shadow:0 12px 30px rgba(44,35,24,.08);
        --radius:18px;
        --radius-lg:24px;
        --max:1200px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
        margin:0;
        font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;
        background:
            radial-gradient(circle at top left, rgba(210,160,75,.12), transparent 24%),
            radial-gradient(circle at top right, rgba(190,145,73,.09), transparent 20%),
            linear-gradient(180deg,#f8f3ea 0%,#fbf7ef 28%,#fdfaf5 65%,#ffffff 100%);
        color:var(--text);
        line-height:1.6;
    }

    img{max-width:100%;display:block}
    a{color:inherit;text-decoration:none}
    iframe{display:block;width:100%;border:0}
    h1,h2,h3,h4,p,ul{margin:0}
    ul{padding-left:18px}

    main{
        background:transparent;
        padding:18px 0 26px;
    }

    section{
        padding:18px 0;
    }

    .container{
        width:min(var(--max),calc(100% - 24px));
        margin-inline:auto;
    }

    .card{
        background:linear-gradient(180deg,#fffdfa 0%,#fff8ee 100%);
        border:1px solid var(--line);
        border-radius:var(--radius-lg);
        box-shadow:var(--shadow);
    }

    .section-card{
        padding:20px;
    }

    /* =========================================================
       HERO
    ========================================================== */
    .page-header{
        position:relative;
        background:
            radial-gradient(1000px 280px at 10% 0%, rgba(210,160,75,.11), transparent 60%),
            radial-gradient(900px 260px at 90% 10%, rgba(169,122,49,.08), transparent 60%),
            linear-gradient(180deg,#fffdfa 0%,#fff8ee 100%);
        padding:20px 0 26px;
        border-bottom:1px solid var(--line);
    }

    .page-header::after{
        content:"";
        position:absolute;
        left:0;
        right:0;
        bottom:-1px;
        height:18px;
        background:linear-gradient(to bottom, rgba(44,35,24,.08), transparent);
        pointer-events:none;
    }

    .hero-wrap{
        display:grid;
        grid-template-columns:1.15fr .85fr;
        gap:18px;
        align-items:stretch;
    }

    .hero-left{
        padding:22px;
        position:relative;
        overflow:hidden;
    }

    .hero-right{
        padding:16px;
        display:grid;
        gap:12px;
        align-content:start;
    }

    .eyebrow{
        display:inline-flex;
        align-items:center;
        gap:8px;
        border:1px solid #ecd8ac;
        background:#fff7e7;
        color:#8b6526;
        padding:8px 12px;
        border-radius:999px;
        font-size:13px;
        font-weight:700;
    }

    h1{
        margin:12px 0 10px;
        font-size:clamp(26px,4vw,42px);
        line-height:1.12;
        letter-spacing:-.02em;
        color:var(--text-strong);
    }

    .hero-desc{
        margin:0;
        color:var(--muted);
        font-size:16px;
        max-width:66ch;
    }

    .hero-badges{
        display:flex;
        flex-wrap:wrap;
        gap:10px;
        margin-top:16px;
    }

    .hero-badge{
        padding:9px 13px;
        border-radius:999px;
        background:linear-gradient(180deg,#fffaf0 0%, #fff1d9 100%);
        border:1px solid rgba(212,161,68,.24);
        color:var(--primary-2);
        font-weight:700;
        font-size:.93rem;
        box-shadow:0 8px 18px rgba(122,82,22,.06);
    }

    .cta-row{
        display:flex;
        flex-wrap:wrap;
        gap:10px;
        margin-top:18px;
    }

    .btn{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:8px;
        padding:12px 16px;
        border-radius:12px;
        border:1px solid transparent;
        font-weight:800;
        font-size:15px;
        cursor:pointer;
        transition:.2s ease;
        user-select:none;
    }

    .btn-primary{
        background:linear-gradient(180deg,var(--brand-2),var(--primary-2));
        color:#fff;
        border-color:#a97730;
        box-shadow:0 10px 24px rgba(157,111,42,.22);
    }

    .btn-primary:hover{transform:translateY(-1px)}

    .btn-outline{
        border-color:#e6d5b6;
        background:linear-gradient(180deg,#fffaf1 0%,#f7ecd4 100%);
        color:#7b5821;
    }

    .btn-outline:hover{
        border-color:#d8bd8a;
        color:#7b5821;
        background:linear-gradient(180deg,#fff7ea 0%,#f4e4bf 100%);
    }

    .product-visual{
        border:1px solid var(--line);
        border-radius:18px;
        overflow:hidden;
        background:linear-gradient(145deg,#fffaf1,#fff5e5);
        min-height:250px;
        display:grid;
        place-items:center;
        position:relative;
        padding:18px;
    }

    .product-visual img{
        width:auto;
        max-width:100%;
        max-height:420px;
        object-fit:contain;
    }

    .ribbon{
        position:absolute;
        top:12px;
        right:12px;
        background:#fff4df;
        color:#8a6225;
        border:1px solid #edd8ac;
        border-radius:999px;
        padding:6px 10px;
        font-size:12px;
        font-weight:800;
    }

    /* =========================================================
       COMMON SECTION HEAD
    ========================================================== */
    .section-head{
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        gap:12px;
        margin-bottom:14px;
        flex-wrap:wrap;
    }

    .section-head h2{
        margin:0;
        font-size:clamp(20px,3vw,28px);
        letter-spacing:-.01em;
        color:var(--text-strong);
    }

    .section-head p{
        margin:0;
        color:var(--muted);
        max-width:72ch;
    }

    /* =========================================================
       ABOUT
    ========================================================== */
    .intro-card,
    .pdf-report-card{
        border:1px solid var(--line);
        border-radius:16px;
        background:linear-gradient(180deg,#fffdfa 0%,#fff8ef 100%);
        padding:18px;
    }

    .intro-card h3{
        margin-bottom:12px;
        color:var(--text-strong);
        font-size:18px;
    }

    .intro-card p,
    .pdf-report-card p{
        color:var(--muted);
        font-size:14.8px;
        line-height:1.8;
    }

    .intro-card p + p,
    .pdf-report-card p + p{
        margin-top:16px;
    }

    /* =========================================================
       INFO BLOCK
    ========================================================== */
    .info-compact{display:grid;gap:12px}

    .ic-block,
    .ic-card{
        border:1px solid var(--line);
        border-radius:16px;
        background:linear-gradient(180deg,#fffdfa 0%,#fff8ef 100%);
        padding:14px;
    }

    .ic-title{
        font-weight:900;
        font-size:15px;
        margin-bottom:10px;
        color:var(--text-strong);
    }

    .ic-price-row{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:10px;
    }

    .ic-pillbox{
        border:1px solid var(--line);
        border-radius:14px;
        padding:12px;
        background:linear-gradient(180deg,#fffdf8,#fff7ea);
        display:grid;
        gap:4px;
    }

    .ic-label{
        font-size:12px;
        font-weight:900;
        color:var(--muted);
    }

    .ic-value{
        font-size:18px;
        font-weight:900;
        line-height:1.2;
        color:var(--text-strong);
    }

    .ic-note{
        font-size:12px;
        color:var(--muted);
    }

    .ic-grid{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
    }

    .ic-k{
        font-size:12px;
        font-weight:900;
        color:var(--muted);
    }

    .ic-v{
        font-size:14px;
        font-weight:800;
        color:var(--text);
        line-height:1.35;
        margin-top:4px;
    }

    /* =========================================================
       TABS
    ========================================================== */
    .tabs-shell{
        display:grid;
        gap:14px;
    }

    .tabs-head{
        display:flex;
        flex-wrap:wrap;
        gap:10px;
    }

    .tab-btn{
        appearance:none;
        border:1px solid var(--line);
        background:linear-gradient(180deg,#fffaf0 0%,#fff2d9 100%);
        color:var(--primary-2);
        border-radius:999px;
        padding:11px 16px;
        font-size:13px;
        font-weight:800;
        line-height:1.2;
        cursor:pointer;
        transition:all .2s ease;
        box-shadow:var(--shadow-soft);
    }

    .tab-btn.active{
        border-color:#946625;
        background:linear-gradient(180deg,#c79a4a,#946625);
        color:#fff;
        box-shadow:0 10px 20px rgba(192,127,34,.20);
    }

    .tab-panel{
        display:none;
        border:1px solid var(--line);
        border-radius:20px;
        background:linear-gradient(180deg,#fffdfa 0%,#fff8ef 100%);
        overflow:hidden;
    }

    .tab-panel.active{
        display:block;
    }

    .content-panel-card{
        padding:20px 22px;
    }

    .content-panel-card h3{
        font-size:18px;
        color:var(--text-strong);
        margin-bottom:12px;
    }

    .content-panel-card ul{
        display:grid;
        gap:10px;
        color:#5e4c39;
    }

    .content-panel-card li{
        line-height:1.65;
    }

    /* =========================================================
       SAMPLE SECTION
    ========================================================== */
    .sample-grid{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px;
    }

    .sample-card{
        border:1px solid var(--line);
        border-radius:16px;
        background:linear-gradient(180deg,#fffdfa 0%,#fff8ef 100%);
        padding:16px;
        display:grid;
        gap:14px;
    }

    .sample-card h3{
        color:var(--text-strong);
        font-size:17px;
    }

    .sample-actions{
        display:flex;
        gap:10px;
        flex-wrap:wrap;
    }

    .btn-link{
        min-height:44px;
        padding:0 16px;
        border-radius:999px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        font-size:.93rem;
        font-weight:800;
        border:1px solid rgba(212,161,68,.24);
        background:linear-gradient(180deg,#fffdf8 0%,#fff4e2 100%);
        color:var(--primary);
        box-shadow:0 8px 18px rgba(122,82,22,.06);
    }

    /* =========================================================
       VIDEO
    ========================================================== */
    .video-only-card{
        border:1px solid var(--line);
        border-radius:18px;
        background:linear-gradient(180deg,#fffdfa 0%,#fff8ef 100%);
        padding:12px;
    }

    .video-frame-wrap{
        overflow:hidden;
        border-radius:16px;
        border:1px solid var(--line);
        background:#0f0810;
        min-height:430px;
    }

    .video-frame{
        width:100%;
        height:430px;
    }

    /* =========================================================
       CTA
    ========================================================== */
    .cta-banner{
        background:linear-gradient(135deg,#8e6730 0%, #6f4c1f 55%, #503414 100%);
        color:#fff;
        border-radius:30px;
        padding:28px 30px;
        box-shadow:0 28px 72px rgba(36,10,8,.18);
    }

    .cta-layout{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:18px;
        flex-wrap:wrap;
    }

    .cta-banner h2{
        color:#fff7f0;
        margin-top:14px;
    }

    .cta-banner p{
        color:#f0e2e9;
        margin-top:10px;
        max-width:720px;
    }

    .cta-panel{
        padding:18px;
        border-radius:22px;
        background:rgba(255,255,255,.08);
        border:1px solid rgba(255,255,255,.14);
    }

    .cta-panel .btn-secondary{
        color:#7b5821;
        background:linear-gradient(180deg,#fff8e9 0%, #fff1d9 100%);
        border:1px solid rgba(212,161,68,.24);
        box-shadow:0 10px 24px rgba(122,82,22,.08);
    }

    /* =========================================================
       RESPONSIVE
    ========================================================== */
    @media (max-width: 960px){
        .hero-wrap{
            grid-template-columns:1fr;
        }

        .ic-price-row,
        .ic-grid,
        .sample-grid{
            grid-template-columns:1fr;
        }

        .cta-layout{
            display:grid;
            grid-template-columns:1fr;
        }
    }

    @media (max-width: 640px){
        .container{
            width:min(var(--max),calc(100% - 16px));
        }

        .hero-left,
        .hero-right,
        .section-card{
            padding:16px;
        }

        .btn,
        .btn-link{
            width:100%;
        }

        .sample-actions,
        .cta-row{
            display:grid;
            grid-template-columns:1fr;
        }
    }
