.ptk-seo-related{margin:28px 0 0;padding:20px;border:1px solid rgba(196,154,61,.28);border-radius:18px;background:rgba(0,0,0,.035)}
.ptk-seo-related-title{margin:0 0 14px;font-size:20px;line-height:1.25}
.ptk-seo-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.ptk-seo-related-card{display:block;text-decoration:none;border-radius:14px;overflow:hidden;background:rgba(255,255,255,.75);border:1px solid rgba(0,0,0,.08)}
.ptk-seo-related-thumb{display:block;aspect-ratio:16/10;overflow:hidden;background:#111}.ptk-seo-related-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ptk-seo-related-text{display:block;padding:10px 12px;font-weight:700;line-height:1.35}
.ptk-seo-internal-link{text-decoration:underline;text-underline-offset:2px}

/* =========================================================
   PTK SEO Related - PTK Home Luxury Match
========================================================= */

.ptk-seo-related{
    position:relative;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,0.045),
            rgba(255,255,255,0.02)
        );

    border:1px solid rgba(196,154,61,.14);

    border-radius:18px;

    box-shadow:
        0 12px 30px rgba(0,0,0,.14);

    overflow:hidden;
}

.ptk-seo-related-title{
    color:#f5d061;

    font-weight:700;

    letter-spacing:.015em;
}

.ptk-seo-related-grid{
    gap:14px;
}

.ptk-seo-related-card{
    position:relative;
    overflow:hidden;

    isolation:isolate;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,0.055),
            rgba(255,255,255,0.025)
        );

    border:1px solid rgba(196,154,61,.14);

    border-radius:18px;

    color:#f3ead7 !important;

    box-shadow:
        0 10px 26px rgba(0,0,0,.12);

    transform:translateY(0);

    transition:
        transform .42s cubic-bezier(.22,.61,.36,1),
        box-shadow .42s cubic-bezier(.22,.61,.36,1),
        border-color .42s cubic-bezier(.22,.61,.36,1),
        background .42s cubic-bezier(.22,.61,.36,1);
}

/* top light */
.ptk-seo-related-card::before{
    content:"";

    position:absolute;

    top:0;
    left:10%;
    right:10%;

    height:1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(245,208,97,.30),
            transparent
        );

    opacity:.55;

    transition:
        opacity .42s cubic-bezier(.22,.61,.36,1),
        left .42s cubic-bezier(.22,.61,.36,1),
        right .42s cubic-bezier(.22,.61,.36,1);
}

/* glow */
.ptk-seo-related-card::after{
    content:"";

    position:absolute;
    inset:0;

    border-radius:inherit;

    opacity:0;

    pointer-events:none;

    z-index:3;

    background:
        radial-gradient(
            circle at top,
            rgba(120,82,24,.18),
            transparent 58%
        );

    box-shadow:
        inset 0 0 0 1px rgba(120,82,24,0),
        0 0 0 rgba(120,82,24,0);

    transition:
        opacity .42s cubic-bezier(.22,.61,.36,1),
        box-shadow .42s cubic-bezier(.22,.61,.36,1);
}

.ptk-seo-related-text{
    position:relative;
    z-index:4;

    color:#f3ead7 !important;

    font-weight:700;
    line-height:1.48;

    transition:
        color .42s cubic-bezier(.22,.61,.36,1),
        transform .42s cubic-bezier(.22,.61,.36,1);
}

/* thumb */
.ptk-seo-related-thumb{
    position:relative;
    overflow:hidden;

    background:#111;
}

.ptk-seo-related-thumb img{
    display:block;

    transition:
        transform .52s cubic-bezier(.22,.61,.36,1),
        opacity .52s cubic-bezier(.22,.61,.36,1),
        filter .52s cubic-bezier(.22,.61,.36,1);
}

/* hover */
.ptk-seo-related-card:hover,
.ptk-seo-related-card:focus-visible{

    transform:translateY(-3px);

    border-color:rgba(120,82,24,.38);

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,0.075),
            rgba(255,255,255,0.04)
        );

    box-shadow:
        0 18px 40px rgba(0,0,0,.18),
        0 0 22px rgba(120,82,24,.08);
}

.ptk-seo-related-card:hover::before,
.ptk-seo-related-card:focus-visible::before{

    left:5%;
    right:5%;

    opacity:.92;
}

.ptk-seo-related-card:hover::after,
.ptk-seo-related-card:focus-visible::after{

    opacity:1;

    box-shadow:
        inset 0 0 0 1px rgba(120,82,24,.34),
        inset 0 0 20px rgba(120,82,24,.06),
        0 0 20px rgba(120,82,24,.06);
}

.ptk-seo-related-card:hover .ptk-seo-related-text,
.ptk-seo-related-card:focus-visible .ptk-seo-related-text{

    color:#fff7e7 !important;

    transform:translateY(-1px);
}

.ptk-seo-related-card:hover .ptk-seo-related-thumb img,
.ptk-seo-related-card:focus-visible .ptk-seo-related-thumb img{

    transform:scale(1.035);

    opacity:.95;

    filter:brightness(1.03);
}

/* mobile tap */
@media (hover:none){

    .ptk-seo-related-card:active{

        transform:scale(.985);

        border-color:rgba(120,82,24,.34);

        box-shadow:
            0 14px 30px rgba(0,0,0,.16),
            0 0 18px rgba(120,82,24,.10);
    }

    .ptk-seo-related-card:active::before{

        left:5%;
        right:5%;

        opacity:.92;
    }

    .ptk-seo-related-card:active::after{

        opacity:1;

        box-shadow:
            inset 0 0 0 1px rgba(120,82,24,.32),
            0 0 18px rgba(120,82,24,.08);
    }

    .ptk-seo-related-card:active .ptk-seo-related-text{
        color:#fff7e7 !important;
    }

    .ptk-seo-related-card:active .ptk-seo-related-thumb img{

        transform:scale(1.025);

        opacity:.95;

        filter:brightness(1.03);
    }
}