
    .straya-directory,
    .straya-directory *,
    .straya-directory *::before,
    .straya-directory *::after{box-sizing:border-box}

    .straya-directory{
        width:100%;
        min-width:0;
        padding:24px 18px 56px;
        background:#F8F9FA;
        color:#20232F;
        font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
        line-height:1.6;
    }

    .straya-directory .fd-wrap{
        width:100%;
        max-width:1140px;
        margin:0 auto;
        min-width:0;
    }

    .straya-directory .fd-hero{
        padding:40px;
        border:1px solid #DDD9EF;
        border-radius:20px;
        background:#E9E7FA;
    }

    .straya-directory .fd-eyebrow{
        display:flex;
        align-items:center;
        gap:10px;
        margin:0 0 14px;
        color:#51476C;
        font-size:11px;
        font-weight:800;
        letter-spacing:1.4px;
        text-transform:uppercase;
    }

    .straya-directory .fd-eyebrow::before{
        content:"";
        width:24px;
        height:2px;
        background:currentColor;
    }

    .straya-directory .fd-title{
        margin:0 0 14px;
        padding:0;
        color:#20232F;
        font-size:clamp(28px,4vw,40px);
        font-weight:800;
        letter-spacing:-1px;
        line-height:1.2;
    }

    .straya-directory .fd-intro{
        max-width:680px;
        margin:0;
        color:#505568;
        font-size:16px;
        line-height:1.75;
    }

    .straya-directory .fd-jumps{
        display:flex;
        flex-wrap:wrap;
        gap:8px;
        margin-top:24px;
    }

    .straya-directory .fd-jumps a{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:48px;
        max-width:100%;
        padding:10px 16px;
        border:1px solid #D9D5E8;
        border-radius:50px;
        background:#FFFFFF;
        color:#20232F;
        font-size:12px;
        font-weight:650;
        line-height:1.4;
        text-align:center;
        text-decoration:none;
        overflow-wrap:anywhere;
    }

    .straya-directory .fd-jumps a:hover{
        background:#F5F3FD;
        border-color:#A89EBE;
    }

    .straya-directory .fd-home{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:20px;
        margin-top:24px;
        padding:24px 26px;
        border:1px solid #DCE0E7;
        border-radius:14px;
        background:#FFFFFF;
        color:#20232F;
        text-decoration:none;
    }

    .straya-directory .fd-home strong{
        display:block;
        font-size:17px;
        font-weight:750;
        line-height:1.4;
    }

    .straya-directory .fd-home small{
        display:block;
        margin-top:5px;
        color:#606878;
        font-size:14px;
    }

    .straya-directory .fd-arrow{
        flex-shrink:0;
        font-size:22px;
        line-height:1;
    }

    .straya-directory .fd-section{
        margin-top:38px;
        scroll-margin-top:110px;
    }

    .straya-directory .fd-section-head{
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        gap:18px;
        margin-bottom:18px;
        padding-bottom:16px;
        border-bottom:1px solid #DCE0E7;
    }

    .straya-directory .fd-heading{
        margin:0 0 6px;
        padding:0;
        color:#20232F;
        font-size:23px;
        font-weight:750;
        line-height:1.35;
        letter-spacing:-.4px;
    }

    .straya-directory .fd-section-head p{
        margin:0;
        color:#606878;
        font-size:14px;
        line-height:1.65;
    }

    .straya-directory .fd-count{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        flex-shrink:0;
        min-width:32px;
        min-height:32px;
        padding:4px 9px;
        border:1px solid #E0DDEC;
        border-radius:50px;
        background:#F0EDF9;
        color:#51476C;
        font-size:12px;
        font-weight:700;
    }

    .straya-directory .fd-grid{
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:12px;
        margin:0;
        padding:0;
        list-style:none;
    }

    .straya-directory .fd-grid li{
        min-width:0;
        margin:0;
        padding:0;
    }

    .straya-directory .fd-grid .fd-hub{
        grid-column:1 / -1;
        margin-bottom:4px;
    }

    .straya-directory .fd-card{
        display:flex;
        align-items:flex-start;
        gap:12px;
        height:100%;
        min-height:72px;
        padding:19px;
        border:1px solid #E0E3E9;
        border-radius:12px;
        background:#FFFFFF;
        color:#20232F;
        text-decoration:none;
        transition:border-color .18s ease,box-shadow .18s ease;
    }

    .straya-directory .fd-card:hover,
    .straya-directory .fd-home:hover{
        border-color:#AEA5C5;
        box-shadow:0 5px 18px rgba(32,35,47,.05);
    }

    .straya-directory .fd-card-arrow{
        flex-shrink:0;
        margin-top:2px;
        color:#717787;
        line-height:1.5;
    }

    .straya-directory .fd-card-copy{
        display:block;
        min-width:0;
    }

    .straya-directory .fd-card-title{
        display:block;
        color:#20232F;
        font-size:14px;
        font-weight:700;
        line-height:1.5;
        overflow-wrap:anywhere;
    }

    .straya-directory .fd-card-description{
        display:block;
        margin-top:6px;
        color:#606878;
        font-size:13px;
        line-height:1.6;
        overflow-wrap:anywhere;
    }

    .straya-directory .fd-hub .fd-card{
        padding:24px;
        border-color:#BDB5D1;
        background:linear-gradient(110deg,#FFFFFF,#F4F2FC);
    }

    .straya-directory .fd-hub .fd-card-title{font-size:17px}

    .straya-directory .fd-hub .fd-card-arrow{
        display:flex;
        align-items:center;
        justify-content:center;
        width:36px;
        height:36px;
        margin:0;
        border-radius:9px;
        background:#E9E7FA;
        color:#51476C;
    }

    .straya-directory a:focus-visible{
        outline:3px solid #51476C;
        outline-offset:4px;
    }

    @media(max-width:900px){
        .straya-directory .fd-grid{
            grid-template-columns:repeat(2,minmax(0,1fr));
        }
    }

    @media(max-width:600px){
        .straya-directory{padding:16px 12px 38px}
        .straya-directory .fd-hero{padding:27px 20px;border-radius:15px}
        .straya-directory .fd-title{font-size:29px;letter-spacing:-.6px}
        .straya-directory .fd-intro{font-size:14px;line-height:1.75}
        .straya-directory .fd-jumps{
            display:grid;
            grid-template-columns:repeat(2,minmax(0,1fr));
            gap:7px;
            margin-top:20px;
        }
        .straya-directory .fd-jumps a{
            padding:10px 8px;
            font-size:11.5px;
            border-radius:10px;
        }
        .straya-directory .fd-home{padding:20px;margin-top:16px}
        .straya-directory .fd-home small{font-size:13px}
        .straya-directory .fd-section{margin-top:30px}
        .straya-directory .fd-heading{font-size:20px}
        .straya-directory .fd-section-head p{font-size:13px}
        .straya-directory .fd-grid{grid-template-columns:minmax(0,1fr);gap:10px}
        .straya-directory .fd-card{padding:17px;min-height:64px}
        .straya-directory .fd-hub .fd-card{padding:19px}
        .straya-directory .fd-hub .fd-card-title{font-size:16px}
    }

    @media(prefers-reduced-motion:reduce){
        .straya-directory .fd-card{transition:none}
    }
    