/* Variables de couleurs et de spacing */
:root {
    --primary-color: #e67e22;
    --primary-color-hover: #f39c12;
    --background-color: #f8f9fa;
    --card-background: #ffffff;
    --text-color: #2c3e50;
    --heading-color: #dfcabc;

    --box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    --box-shadow-hover: 0 6px 12px rgba(0, 0, 0, 0.15);
    --font-family: 'Roboto', sans-serif;
    --border-radius: 8px;
    --btn-padding: 10px 20px;
    --font-size-base: 1rem;
    --transition-speed: 0.3s;
}

/* Style général de la page */
body {
    background-color: var(--background-color);
    font-family: var(--font-family);
    margin: 0;
    padding: 0;
    line-height: 1.6;
}

/* Titre principal */
h1 {
    color: var(--heading-color);
    font-size: 2rem;
    text-align: center;
    margin: 20px 0;
}


h4 {
    color: var(--heading2-color);
    font-size: 1.4rem;
    text-align: left;
    margin: 10px 0;
}

h5 {
    color: var(--heading2-color);
    font-size: 1.4rem;
    text-align: left;
    margin: 10px 0;
}


/* Cartes */
.card {
    border: 1px solid #ddd;
    border-radius: var(--border-radius);
    margin-bottom: 1.5rem;
    box-shadow: var(--box-shadow);
    transition: box-shadow var(--transition-speed), transform var(--transition-speed);
}

.card:hover {
    box-shadow: var(--box-shadow-hover);
    transform: translateY(-5px);
}

.card-title {
    color: var(--primary-color);
    font-weight: bold;
}

/* Corps des cartes */
.card-body {
    background-color: var(--card-background);
    color: var(--text-color);
    padding: 20px;
    border-radius: var(--border-radius);
}

.card-text {
    font-size: var(--font-size-base);
}

/* Boutons */
.btn-primary {
    background-color: var(--primary-color);
    border: none;
    color: white;
    padding: var(--btn-padding);
    font-size: 1rem;
    border-radius: var(--border-radius);
    text-align: center;
    text-decoration: none;
    display: inline-block;
    transition: background-color var(--transition-speed);
}

.btn-primary:hover {
    background-color: var(--primary-color-hover);
}

/* Mise en page des colonnes */
.row {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.col-md-4, .col-md-8 {
    padding: 0;
    flex: 1;
}

.col-md-4 {
    max-width: 33.33%;
}

.col-md-8 {
    max-width: 66.66%;
}

/* Conteneur principal pour limiter la largeur */
.container {
    max-width: 1500px;
    margin: 0 auto;
    padding: 20px;
}

/* Responsivité */
@media (max-width: 768px) {
    .col-md-4, .col-md-8 {
        max-width: 100%;
    }

    .card-body {
        padding: 15px;
    }

    h1 {
        font-size: 1.75rem;
    }

    .btn-primary {
        font-size: 0.9rem;
        padding: 8px 16px;
    }
}

/* Progress Container */
#progress-container,
#download-progress-container {
    display: none; /* Masquer par défaut */
    text-align: center;
    margin-top: 20px;
}

.progress {
    height: 20px;
    width: 100%;
    background-color: #e0e0e0;
    margin-top: 10px;
}

.progress-bar {
    height: 100%;
    width: 0;
}

#progress-bar-fill {
    background-color: #28a745;
}

#download-progress-bar-fill {
    background-color: #17a2b8;
}

#progress-text,
#download-progress-text {
    margin-top: 10px;
}

/* ADNET marketing homepage */
:root { --adnet-ink: #112338; --adnet-navy: #101e31; --adnet-muted: #657486; --adnet-paper: #f7f8f5; --adnet-lime: #c9f36a; --adnet-line: #e2e7e8; }
body { font-family: 'DM Sans', sans-serif; color: var(--adnet-ink); background: var(--adnet-paper); }
.site-nav { min-height: 82px; background: #fff; border-bottom: 1px solid rgba(17,35,56,.08); position: relative; z-index: 5; }
.site-nav .navbar-brand { display: inline-flex; align-items: center; gap: 10px; color: var(--adnet-ink); font-family: 'Manrope', sans-serif; font-weight: 800; letter-spacing: .04em; }
.brand-mark { width: 36px; height: 36px; display: inline-grid; place-items: center; background: var(--adnet-lime); color: var(--adnet-ink); border-radius: 11px 11px 11px 3px; font-weight: 800; }
.brand-word { display: flex; flex-direction: column; line-height: 1; }
.brand-word small { margin-top: 5px; font: 600 8px 'DM Sans', sans-serif; letter-spacing: .18em; }
.site-logo { display: block; width: 66px; height: 66px; object-fit: contain; flex: 0 0 auto; }
.brand-context { color: #657486; font: 600 .7rem/1.45 'DM Sans',sans-serif; letter-spacing: 0; }
.site-nav .nav-link { color: #465668; font-size: .92rem; font-weight: 600; padding: .7rem 1rem; }
.site-nav .nav-link:hover { color: #688c25; }
.site-nav .nav-cta { margin-left: .6rem; }
.site-nav .nav-cta .nav-link { color: var(--adnet-ink); background: var(--adnet-lime); border-radius: 6px; padding: .72rem 1.1rem; }
.marketing-home { overflow: hidden; }
.marketing-hero { position: relative; color: #fff; background: var(--adnet-navy); min-height: 610px; isolation: isolate; }
.marketing-hero:before { content: ''; position: absolute; inset: 0; z-index: -1; opacity: .12; background-image: linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(90deg,transparent,#000 55%); }
.marketing-hero:after { content: ''; width: 580px; height: 580px; border: 1px solid rgba(201,243,106,.13); border-radius: 50%; position: absolute; right: -135px; top: -260px; z-index: -1; box-shadow: 0 0 0 70px rgba(201,243,106,.025),0 0 0 140px rgba(201,243,106,.02); }
.hero-grid { min-height: 570px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 50px; padding-top: 54px; padding-bottom: 48px; }
.hero-copy { max-width: 610px; }
.eyebrow { color: var(--adnet-lime); text-transform: uppercase; letter-spacing: .15em; font-size: .72rem; font-weight: 700; margin-bottom: 21px; }
.eyebrow-mark { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--adnet-lime); margin-right: 9px; box-shadow: 0 0 15px var(--adnet-lime); }
.hero-copy h1,.lab-copy h2,.contact-inner h2 { color: #fff; font: 700 clamp(2.5rem,5vw,4.35rem)/1.08 'Manrope',sans-serif; letter-spacing: -.055em; text-align: left; margin: 0 0 22px; }
.hero-copy h1 span { color: var(--adnet-lime); }
.hero-lead { max-width: 540px; color: #c3ceda; font-size: 1.08rem; line-height: 1.75; margin-bottom: 29px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 15px; padding: 14px 19px; border-radius: 5px; font-weight: 700; text-decoration: none; transition: transform .2s,background .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--adnet-lime); color: var(--adnet-ink); }
.button-primary:hover { color: var(--adnet-ink); background: #d8ff91; }
.button-quiet { border: 1px solid rgba(255,255,255,.28); color: #fff; }
.button-quiet:hover { color: #fff; border-color: var(--adnet-lime); }
.hero-note { color: #aab7c7; font-size: .82rem; margin: 23px 0 0; }
.hero-note span { color: var(--adnet-lime); font-size: .67rem; margin-right: 7px; }
.hero-visual { height: 380px; max-width: 510px; width: 100%; justify-self: end; position: relative; display: grid; place-items: center; }
.visual-orbit { position: absolute; border-radius: 50%; border: 1px solid rgba(201,243,106,.22); transform: rotate(-24deg); }
.orbit-one { width: 310px; height: 310px; }
.orbit-two { width: 420px; height: 220px; border-color: rgba(132,177,213,.25); transform: rotate(34deg); }
.visual-core { width: 148px; height: 148px; border-radius: 50%; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 7px; background: radial-gradient(circle at 35% 25%,#253c52,#13253a 70%); border: 1px solid rgba(201,243,106,.55); box-shadow: 0 0 60px rgba(201,243,106,.14),inset 0 0 25px rgba(201,243,106,.08); color: var(--adnet-lime); font: 700 .75rem/1.2 'Manrope',sans-serif; letter-spacing: .17em; text-align: center; }
.core-symbol { font-size: 2rem; line-height: 1; }
.visual-tag { position: absolute; display: flex; align-items: center; gap: 10px; background: #1b3046; border: 1px solid rgba(255,255,255,.13); border-radius: 5px; padding: 10px 13px; box-shadow: 0 12px 35px rgba(0,0,0,.25); color: #e8eef4; font-size: .82rem; font-weight: 600; }
.visual-tag span { color: var(--adnet-lime); font-size: .68rem; font-weight: 800; }
.tag-osint { top: 40px; left: 30px; }.tag-password { top: 143px; right: -3px; }.tag-protect { bottom: 61px; left: 52px; }
.visual-caption { position: absolute; bottom: 6px; color: #93a2b1; font-size: .61rem; letter-spacing: .18em; }
.hero-bottom { display: flex; justify-content: space-between; align-items: center; padding-bottom: 19px; color: #93a2b1; font-size: .76rem; }
.hero-bottom a { color: var(--adnet-lime); text-decoration: none; font-size: 1.25rem; }
.team-strip { background: #fff; border-bottom: 1px solid var(--adnet-line); }
.team-inner { min-height: 115px; display: flex; align-items: center; gap: 38px; }
.team-inner > .eyebrow { color: #778694; margin: 0 auto 0 0; white-space: nowrap; }
.team-person { display: flex; align-items: center; gap: 12px; }
.team-initials { width: 42px; height: 42px; flex: 0 0 42px; display: grid; place-items: center; border-radius: 50%; background: #eff4e6; color: #486b1a; font-size: .72rem; font-weight: 800; }
.team-person p { margin: 0; display: flex; flex-direction: column; gap: 3px; font-size: .82rem; }
.team-person strong { color: var(--adnet-ink); }.team-person p span { color: var(--adnet-muted); font-size: .72rem; }
.team-link { color: var(--adnet-ink); font-weight: 700; font-size: .82rem; text-decoration: none; white-space: nowrap; }
.team-link:hover { color: #688c25; }
.intro-section,.takeaway-section { padding: 105px 0; background: var(--adnet-paper); }
.intro-grid,.takeaway-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 85px; align-items: center; }
.eyebrow-dark { color: #688c25; }
.intro-section h2,.section-heading h2,.takeaway-section h2 { color: var(--adnet-ink); text-align: left; font: 700 clamp(2rem,3.5vw,3.15rem)/1.14 'Manrope',sans-serif; letter-spacing: -.045em; margin: 0; }
.intro-section h2 span { color: #71836a; }
.intro-text { color: #596a7a; font-size: 1rem; line-height: 1.8; }.intro-text p:last-child { margin-bottom: 0; }
.journey-section { padding: 99px 0 106px; background: #fff; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 42px; }
.section-heading .eyebrow { margin-bottom: 13px; }.section-heading > p { max-width: 340px; color: var(--adnet-muted); line-height: 1.65; margin: 0 0 3px; }
.journey-grid { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--adnet-line); border-radius: 8px; overflow: hidden; }
.journey-card { min-height: 300px; position: relative; padding: 28px 24px 23px; border-right: 1px solid var(--adnet-line); background: #fff; transition: background .2s; }.journey-card:last-child { border: 0; }.journey-card:hover { background: #f8faF4; }
.step-number { position: absolute; right: 22px; top: 23px; color: #9ba8b2; font: 700 .72rem 'Manrope',sans-serif; }
.step-icon { display: grid; place-items: center; width: 48px; height: 48px; background: #edf4df; border-radius: 13px 13px 13px 3px; color: #587622; font-size: 1.5rem; margin-bottom: 34px; }
.journey-card h3 { color: var(--adnet-ink); font: 700 1.12rem 'Manrope',sans-serif; margin-bottom: 12px; }.journey-card p { color: #657486; font-size: .88rem; line-height: 1.65; min-height: 88px; }
.step-topic { display: inline-block; color: #688c25; font-size: .68rem; font-weight: 700; letter-spacing: .04em; }
.lab-section { padding: 100px 0; background: var(--adnet-navy); color: #fff; position: relative; overflow: hidden; }.lab-section:after { content: ''; position: absolute; right: -170px; bottom: -340px; width: 600px; height: 600px; border-radius: 50%; border: 1px solid rgba(201,243,106,.13); box-shadow: 0 0 0 70px rgba(201,243,106,.025); }
.lab-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 90px; align-items: center; position: relative; z-index: 1; }
.lab-art { padding: 25px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); border-radius: 8px; }
.lab-window { background: #0b1726; border: 1px solid #294058; border-radius: 6px; overflow: hidden; font-family: Consolas,monospace; box-shadow: 0 25px 70px rgba(0,0,0,.2); }
.window-bar { display: flex; align-items: center; gap: 6px; padding: 13px 15px; background: #17283b; color: #9eacbb; font-size: .65rem; }.window-bar i { width: 7px; height: 7px; display: block; background: #657486; border-radius: 50%; }.window-bar span { margin-left: 9px; }
.tree-line { padding: 13px 18px; color: #dce5ed; font-size: .83rem; border-bottom: 1px solid rgba(255,255,255,.045); }.tree-line b { color: var(--adnet-lime); margin-right: 10px; }.tree-line.nested { padding-left: 46px; color: #aebdca; }.tree-line.active { background: rgba(201,243,106,.08); color: #e9f5d1; }
.pill-demo { margin-left: 15px; padding: 3px 6px; border-radius: 3px; background: rgba(201,243,106,.15); color: var(--adnet-lime); font: 700 .57rem 'DM Sans',sans-serif; letter-spacing: .1em; }
.window-foot { padding: 15px 18px; color: #8293a4; font: 600 .59rem 'DM Sans',sans-serif; letter-spacing: .12em; }.pulse { display: inline-block; width: 6px; height: 6px; margin-right: 8px; background: var(--adnet-lime); border-radius: 50%; box-shadow: 0 0 9px var(--adnet-lime); }
.lab-copy .eyebrow { margin-bottom: 18px; }.lab-copy h2 { font-size: clamp(2.15rem,3.5vw,3.15rem); }.lab-copy > p:not(.eyebrow) { color: #b4c1ce; font-size: .96rem; line-height: 1.8; }
.lab-copy ul { list-style: none; padding: 6px 0 0; margin: 0 0 27px; }.lab-copy li { padding: 7px 0; color: #e0e7ed; font-size: .88rem; }.lab-copy li span { color: var(--adnet-lime); margin-right: 10px; }.button-light { border: 1px solid rgba(201,243,106,.5); color: var(--adnet-lime); }.button-light:hover { color: var(--adnet-ink); background: var(--adnet-lime); }
.takeaway-section { background: #f0f3ed; }.takeaway-grid { align-items: start; }.takeaway-list > div { display: flex; gap: 20px; padding: 17px 0; border-bottom: 1px solid #d9dfd7; }.takeaway-list > div:first-child { padding-top: 0; }.takeaway-list > div:last-child { border: 0; }.takeaway-list span { color: #718d3a; font: 700 .78rem 'Manrope',sans-serif; padding-top: 2px; }.takeaway-list p { color: #435366; margin: 0; line-height: 1.55; }
.contact-section { text-align: center; background: #fff; padding: 94px 0 105px; }.contact-inner .eyebrow { color: #688c25; }.contact-inner h2 { color: var(--adnet-ink); font-size: clamp(2.3rem,4.2vw,3.65rem); text-align: center; }.contact-inner > p:not(.eyebrow) { color: var(--adnet-muted); margin: 0 0 25px; }.contact-inner .button { min-width: 185px; }
.site-footer { background: #0b1726; color: #aebbc8; padding: 27px 0; }.footer-inner { display: flex; align-items: center; gap: 25px; flex-wrap: wrap; }.footer-brand { display: inline-flex; gap: 9px; align-items: center; color: #fff; text-decoration: none; font: 800 .92rem 'Manrope',sans-serif; }.footer-brand .brand-mark { width: 29px; height: 29px; border-radius: 9px 9px 9px 3px; }.footer-brand .site-logo { width: 55px; height: 55px; padding: 2px; background: #fff; border-radius: 4px; }.footer-inner p { margin: 0 auto 0 0; font-size: .76rem; }.footer-inner > a:not(.footer-brand) { color: var(--adnet-lime); font-size: .76rem; text-decoration: none; }.footer-inner small { flex-basis: 100%; color: #758597; font-size: .68rem; padding-left: 0; }
@media (max-width: 991px) { .site-nav .nav-cta { margin: 7px 0 0; }.hero-grid { gap: 20px; }.team-inner { gap: 20px; flex-wrap: wrap; padding-top: 18px; padding-bottom: 18px; }.team-inner > .eyebrow { flex-basis: 100%; }.journey-grid { grid-template-columns: repeat(2,1fr); }.journey-card:nth-child(2) { border-right: 0; }.journey-card:nth-child(-n+2) { border-bottom: 1px solid var(--adnet-line); }.lab-grid { gap: 45px; } }
@media (max-width: 767px) { .site-nav { min-height: 70px; }.hero-grid { grid-template-columns: 1fr; padding-top: 65px; }.hero-copy h1 { font-size: clamp(2.55rem,11vw,3.5rem); }.hero-visual { height: 300px; justify-self: center; transform: scale(.88); margin-top: -8px; }.hero-bottom { margin-top: -4px; }.intro-section,.journey-section,.lab-section,.takeaway-section { padding: 70px 0; }.intro-grid,.takeaway-grid,.lab-grid { grid-template-columns: 1fr; gap: 34px; }.section-heading { align-items: start; flex-direction: column; gap: 15px; }.journey-grid { grid-template-columns: 1fr; }.journey-card { min-height: 0; border-right: 0; border-bottom: 1px solid var(--adnet-line); }.journey-card:nth-child(2) { border-bottom: 1px solid var(--adnet-line); }.journey-card:last-child { border-bottom: 0; }.journey-card p { min-height: 0; }.step-icon { margin-bottom: 22px; }.lab-art { padding: 14px; }.team-person { flex: 1 1 100%; }.team-link { margin-left: 54px; }.footer-inner { gap: 13px 20px; }.footer-inner p { flex-basis: calc(100% - 100px); }.footer-inner small { padding-left: 0; } }
@media (prefers-reduced-motion: reduce) { .button,.journey-card { transition: none; } }

/* Fictitious OSINT exercise: briefing and local platform simulations */
.brief-hero { color: #fff; background: var(--adnet-navy); padding: 78px 0 82px; position: relative; overflow: hidden; }
.brief-hero:after { content: ''; position: absolute; width: 500px; height: 500px; right: -140px; top: -250px; border: 1px solid rgba(201,243,106,.2); border-radius: 50%; box-shadow: 0 0 0 70px rgba(201,243,106,.025),0 0 0 140px rgba(201,243,106,.02); }
.brief-hero-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 80px; align-items: center; position: relative; z-index: 1; }
.brief-hero h1 { color: #fff; text-align: left; font: 700 clamp(2.8rem,5.7vw,4.5rem)/1.05 'Manrope',sans-serif; letter-spacing: -.055em; margin: 0 0 22px; }.brief-hero h1 span { color: var(--adnet-lime); }
.brief-lead { color: #bdc9d5; max-width: 580px; font-size: 1.04rem; line-height: 1.8; margin-bottom: 24px; }
.brief-facts { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 27px; }.brief-facts span { padding: 7px 10px; border: 1px solid rgba(255,255,255,.17); border-radius: 4px; color: #d1dce5; font-size: .75rem; }
.mission-card { padding: 27px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.15); border-radius: 8px; box-shadow: 0 25px 60px rgba(0,0,0,.16); }.mission-label { color: var(--adnet-lime); font-size: .65rem; font-weight: 700; letter-spacing: .15em; }.mission-avatar { display: grid; place-items: center; width: 50px; height: 50px; margin-top: 19px; background: var(--adnet-lime); color: var(--adnet-ink); border-radius: 50%; font: 800 1.2rem 'Manrope',sans-serif; }.mission-card h2 { margin: 14px 0 3px; color: #fff; font: 700 1.3rem 'Manrope',sans-serif; }.mission-card > p { color: #b7c3cf; font-size: .82rem; margin: 0; }.mission-handle { display: inline-block; margin-top: 13px; padding: 6px 9px; background: rgba(0,0,0,.2); color: #e0e8ef; border-radius: 3px; font: .78rem Consolas,monospace; }.mission-divider { height: 1px; margin: 19px 0 16px; background: rgba(255,255,255,.15); }.mission-card .mission-task { line-height: 1.65; }
.brief-timeline { background: #fff; padding: 82px 0 88px; }.timeline-grid { display: grid; grid-template-columns: repeat(4,1fr); margin-top: 33px; }.timeline-grid article { position: relative; padding: 20px 22px 0 0; border-top: 1px solid #dce3e4; }.timeline-dot { position: absolute; top: -5px; left: 0; width: 9px; height: 9px; background: #92bb40; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px #92bb40; }.timeline-time { color: #688c25; font: 700 .7rem 'Manrope',sans-serif; }.timeline-grid h3 { margin: 14px 0 7px; color: var(--adnet-ink); font: 700 1rem 'Manrope',sans-serif; }.timeline-grid p { max-width: 230px; color: #657486; font-size: .82rem; line-height: 1.6; }
.brief-method { padding: 76px 0; background: #f0f3ed; }.method-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 75px; align-items: start; }.method-grid h2 { color: var(--adnet-ink); text-align: left; font: 700 clamp(2rem,3vw,2.7rem)/1.15 'Manrope',sans-serif; letter-spacing: -.04em; }.method-grid ol { list-style: none; padding: 0; margin: 0; }.method-grid li { display: flex; gap: 16px; padding: 12px 0; border-bottom: 1px solid #d9dfd7; color: #435366; }.method-grid li:last-child { border-bottom: 0; }.method-grid li span { color: #718d3a; font: 700 .75rem 'Manrope',sans-serif; }
.brief-footer { padding: 26px 0; background: #fff; }.brief-footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }.brief-footer p { color: #657486; font-size: .8rem; line-height: 1.55; margin: 0; }.brief-footer strong { color: var(--adnet-ink); }
.speakers-section { padding: 70px 0; background: #fff; }.speakers-inner { display: grid; grid-template-columns: 1.2fr 1fr 1fr; align-items: center; gap: 24px; }.speakers-inner > div:first-child .eyebrow { margin-bottom: 10px; }.speakers-inner h2 { max-width: 360px; margin: 0; color: var(--adnet-ink); text-align: left; font: 700 1.7rem/1.2 'Manrope',sans-serif; letter-spacing: -.035em; }.speaker-card { display: flex; gap: 12px; align-items: center; min-height: 70px; padding: 13px; border: 1px solid var(--adnet-line); border-radius: 6px; }.speaker-card p { display: flex; flex-direction: column; gap: 4px; margin: 0; }.speaker-card strong { color: var(--adnet-ink); font-size: .82rem; }.speaker-card p span { color: var(--adnet-muted); font-size: .7rem; line-height: 1.45; }.speaker-credit { grid-column: 2/-1; margin: -12px 0 0; color: #8a96a2; font-size: .7rem; }
.osint-lab { min-height: 100vh; padding: 30px 0 80px; background: #f2f4f7; }.platform-shell { max-width: 1120px; margin: 0 auto; padding: 0 20px; }.platform-header { min-height: 68px; display: flex; gap: 20px; align-items: center; padding: 12px 20px; background: #fff; border: 1px solid #e0e5e9; border-radius: 8px 8px 0 0; }.platform-brand { display: flex; align-items: center; gap: 9px; color: var(--adnet-ink); text-decoration: none; font: 800 1.05rem 'Manrope',sans-serif; }.platform-symbol { display: grid; place-items: center; width: 32px; height: 32px; background: #eaf2dc; color: #587622; border-radius: 8px; font-size: .78rem; }.platform-type { color: #748292; font-size: .7rem; }.theme-instogram .platform-symbol { background: #fae6ef; color: #b53970; }.theme-midium .platform-symbol { background: #e8e5f8; color: #6856a2; }.theme-faxbook .platform-symbol { background: #e0f0ef; color: #267c74; }
.platform-search { display: flex; margin-left: auto; width: min(310px,35vw); border: 1px solid #dfe4e8; border-radius: 5px; overflow: hidden; }.platform-search input { min-width: 0; flex: 1; padding: 8px 10px; border: 0; outline: none; color: #36495b; font-size: .78rem; }.platform-search button { border: 0; background: #f3f5f6; color: #657486; width: 38px; font-size: 1.25rem; }.simulated-pill { padding: 5px 7px; background: #edf4df; border-radius: 3px; color: #55751e; font-size: .58rem; font-weight: 800; letter-spacing: .08em; white-space: nowrap; }
.profile-panel { background: #fff; border: 1px solid #e0e5e9; border-top: 0; }.profile-cover { height: 115px; background: linear-gradient(120deg,#cedce8,#e4ecef 55%,#d9e3da); }.theme-instogram .profile-cover { background: linear-gradient(120deg,#d8d8ec,#f3d7e1 55%,#e9e3d3); }.theme-midium .profile-cover { background: linear-gradient(120deg,#e5dfce,#f0eadf 55%,#dcd8ed); }.theme-faxbook .profile-cover { background: linear-gradient(120deg,#c9e0dc,#e6ead7 55%,#d6e1ef); }
.profile-details { display: flex; gap: 16px; align-items: start; padding: 0 25px 23px; }.profile-avatar { width: 68px; height: 68px; flex: 0 0 68px; display: grid; place-items: center; margin-top: -27px; border: 4px solid #fff; border-radius: 50%; background: #dbe7ec; color: #385569; font: 700 1.5rem 'Manrope',sans-serif; }.theme-instogram .profile-avatar { background: #f6d9e5; color: #a33d6c; }.theme-midium .profile-avatar { background: #e6e0f4; color: #62518b; }.theme-faxbook .profile-avatar { background: #d4e9e5; color: #27736d; }.profile-copy { padding-top: 11px; }.profile-handle { margin: 0; color: #778594; font-size: .7rem; }.profile-copy h1 { margin: 2px 0 3px; color: var(--adnet-ink); text-align: left; font: 700 1.25rem 'Manrope',sans-serif; }.profile-copy > p:not(.profile-handle) { margin: 0; color: #536477; font-size: .8rem; }.profile-copy .profile-about { margin-top: 7px!important; color: #728091!important; }.public-label { margin: 15px 0 0 auto; padding: 5px 8px; border: 1px solid #dfe5e7; border-radius: 4px; color: #728091; font-size: .65rem; }
.feed-section { padding: 32px 25px 26px; background: #f9fafb; border: 1px solid #e0e5e9; border-top: 0; border-radius: 0 0 8px 8px; }.feed-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }.feed-heading .eyebrow { margin-bottom: 6px; font-size: .62rem; }.feed-heading h2 { margin: 0; color: var(--adnet-ink); font: 700 1.4rem 'Manrope',sans-serif; }.feed-heading h2 span { color: #8794a2; font: 500 .8rem 'DM Sans',sans-serif; }.feed-heading > p { margin: 0; color: #8a96a2; font-size: .67rem; }.query-note { color: #657486; font-size: .8rem; }.query-note a { color: #547921; }.post-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }.platform-post { min-width: 0; padding: 18px 18px 13px; background: #fff; border: 1px solid #e3e8eb; border-radius: 7px; }.post-meta { display: flex; gap: 9px; align-items: center; margin-bottom: 14px; }.post-avatar { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #e4edf1; color: #456377; font-size: .7rem; font-weight: 800; }.theme-instogram .post-avatar { background: #f8e5ed; color: #a33d6c; }.theme-midium .post-avatar { background: #ece8f6; color: #62518b; }.theme-faxbook .post-avatar { background: #e0efec; color: #27736d; }.post-meta > div { min-width: 0; display: flex; flex-direction: column; }.post-meta strong { color: #31485a; font-size: .73rem; }.post-meta > div span { color: #8a96a2; font-size: .63rem; }.post-category { margin-left: auto; color: #8794a2; font-size: .59rem; }.platform-post h3 { margin: 0 0 7px; color: #24394b; font: 700 .98rem 'Manrope',sans-serif; }.platform-post > p { color: #5d6d7d; font-size: .79rem; line-height: 1.62; margin: 0 0 11px; }.post-links { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }.post-links a { color: #4e7620; text-decoration: none; font-size: .7rem; font-weight: 700; }.theme-instogram .post-links a { color: #a33d6c; }.theme-midium .post-links a { color: #62518b; }.theme-faxbook .post-links a { color: #27736d; }.post-actions { display: flex; gap: 15px; padding-top: 10px; border-top: 1px solid #edf0f2; color: #8a96a2; font-size: .62rem; }.platform-disclaimer { display: flex; gap: 10px; align-items: start; margin-top: 20px; padding: 12px 14px; background: #eef3e6; border-radius: 5px; color: #607044; }.platform-disclaimer p { margin: 0; font-size: .72rem; line-height: 1.5; }.back-to-brief { display: inline-block; margin-top: 17px; color: #536779; font-size: .75rem; text-decoration: none; }.empty-search { grid-column: 1/-1; padding: 35px; text-align: center; color: #657486; }.empty-search h3 { font-size: 1.1rem; }
.theme-likedon { --service-accent: #597aa1; }.theme-instogram { --service-accent: #bd4c80; }.theme-midium { --service-accent: #7565a7; }.theme-faxbook { --service-accent: #35877e; }
@media(max-width: 850px) { .brief-hero-grid { gap: 35px; }.timeline-grid { grid-template-columns: repeat(2,1fr); row-gap: 24px; }.timeline-grid article:nth-child(2) { border-top-color: #dce3e4; }.timeline-grid p { max-width: 300px; } }
@media(max-width: 650px) { .brief-hero { padding: 58px 0; }.brief-hero-grid,.method-grid { grid-template-columns: 1fr; gap: 35px; }.brief-hero h1 { font-size: 2.75rem; }.mission-card { max-width: 430px; }.brief-timeline,.brief-method { padding: 60px 0; }.timeline-grid { grid-template-columns: 1fr; gap: 18px; }.timeline-grid article { padding-left: 18px; border-top: 0; border-left: 1px solid #dce3e4; }.timeline-dot { left: -5px; top: 23px; }.timeline-grid h3 { margin-top: 7px; }.brief-footer-inner { flex-direction: column; align-items: start; }.speakers-inner { grid-template-columns: 1fr; gap: 16px; }.speakers-inner h2 { font-size: 1.5rem; }.speaker-credit { grid-column: auto; margin: 0; }.platform-shell { padding: 0 10px; }.osint-lab { padding-top: 12px; }.platform-header { flex-wrap: wrap; gap: 10px; padding: 10px; }.platform-type { margin-right: auto; }.platform-search { order: 3; width: 100%; }.simulated-pill { margin-left: auto; }.profile-cover { height: 75px; }.profile-details { padding: 0 14px 17px; gap: 10px; }.profile-avatar { width: 54px; height: 54px; flex-basis: 54px; }.profile-copy h1 { font-size: 1.1rem; }.profile-copy .profile-about { display: none; }.public-label { display: none; }.feed-section { padding: 22px 12px; }.feed-heading { align-items: start; flex-direction: column; gap: 8px; }.post-grid { grid-template-columns: 1fr; }.platform-post { padding: 15px; } }

/* QR-code safety introduction, designed for participant phones */
.qr-safety { background: #fff; }
.qr-safety-hero { padding: 70px 0 76px; background: #101e31; color: #fff; overflow: hidden; }
.qr-safety-layout { display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 65px; }
.qr-safety-copy h1 { max-width: 650px; margin: 0 0 20px; color: #fff; text-align: left; font: 800 clamp(2.7rem,6vw,4.5rem)/1.04 'Manrope',sans-serif; letter-spacing: -.055em; }
.qr-safety-copy h1 span { color: var(--adnet-lime); }
.qr-safety-lead { max-width: 590px; margin: 0 0 27px; color: #bdc9d5; font-size: 1.02rem; line-height: 1.75; }
.qr-visual-card { max-width: 390px; justify-self: center; padding: 26px; border: 1px solid rgba(255,255,255,.15); border-radius: 12px; background: rgba(255,255,255,.06); box-shadow: 0 24px 65px rgba(0,0,0,.22); }
.qr-faux-code { width: min(250px,58vw); aspect-ratio: 1; position: relative; display: grid; place-items: center; margin: 0 auto 22px; background-color: #fff; background-image: linear-gradient(90deg,#101e31 12px,transparent 12px),linear-gradient(#101e31 12px,transparent 12px),linear-gradient(90deg,transparent 7px,#101e31 7px 13px,transparent 13px),linear-gradient(transparent 7px,#101e31 7px 13px,transparent 13px); background-size: 36px 36px,36px 36px,24px 24px,24px 24px; background-position: 2px 1px,1px 2px,14px 13px,13px 14px; border: 14px solid white; border-radius: 4px; }
.qr-faux-code span { position: absolute; width: 62px; height: 62px; border: 10px solid #101e31; background: #fff; box-shadow: inset 0 0 0 8px white, inset 0 0 0 17px #101e31; }
.qr-faux-code span:nth-child(1) { left: 3px; top: 3px; }.qr-faux-code span:nth-child(2) { right: 3px; top: 3px; }.qr-faux-code span:nth-child(3) { left: 3px; bottom: 3px; }.qr-faux-code span:nth-child(4) { display: none; }
.qr-faux-code b { display: grid; place-items: center; z-index: 1; width: 42px; height: 42px; border: 4px solid #fff; border-radius: 50%; background: #c58a29; color: white; font: 800 1.5rem 'Manrope',sans-serif; }
.qr-visual-caption { display: flex; gap: 12px; align-items: center; }.qr-warning-dot { width: 11px; height: 11px; flex: 0 0 11px; border-radius: 50%; background: #f4b747; box-shadow: 0 0 0 5px rgba(244,183,71,.14); }.qr-visual-caption div { display: grid; gap: 3px; }.qr-visual-caption strong { color: #fff; font-size: .85rem; }.qr-visual-caption small { color: #b9c6d2; font-size: .72rem; line-height: 1.45; }
.qr-checks { padding: 78px 0 85px; }.qr-section-heading { margin-bottom: 34px; }.qr-section-heading h2 { margin: 0; color: var(--adnet-ink); text-align: left; font: 800 clamp(2.1rem,4vw,3.1rem)/1.12 'Manrope',sans-serif; letter-spacing: -.045em; }.qr-section-heading h2 span { color: #688c25; }
.qr-check-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }.qr-check-card { position: relative; min-height: 275px; padding: 22px 18px; border: 1px solid #e1e7e8; border-radius: 8px; background: #fff; }.qr-check-number { position: absolute; top: 18px; right: 18px; color: #9aa5ad; font: 700 .7rem 'Manrope',sans-serif; }.qr-check-icon { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 22px; border-radius: 10px; background: #eff4e8; color: #5b7b2a; font: 700 1.3rem 'Manrope',sans-serif; }.qr-check-card h3 { margin: 0 0 9px; color: var(--adnet-ink); font: 700 1rem 'Manrope',sans-serif; }.qr-check-card p { margin: 0; color: #657486; font-size: .78rem; line-height: 1.65; }
.qr-safety-note { display: flex; gap: 13px; align-items: start; max-width: 850px; margin-top: 22px; padding: 16px 18px; border-left: 3px solid #88a943; border-radius: 0 6px 6px 0; background: #f2f5ed; }.qr-safety-note > span { display: grid; place-items: center; width: 22px; height: 22px; flex: 0 0 22px; border-radius: 50%; background: #dfe9ce; color: #506b24; font-weight: 800; }.qr-safety-note p { margin: 0; color: #56664a; font-size: .8rem; line-height: 1.6; }.qr-safety-note strong { color: #35481d; }
.qr-start { padding: 42px 0; background: #101e31; }.qr-start-inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }.qr-start .eyebrow { margin-bottom: 8px; color: var(--adnet-lime); }.qr-start h2 { margin: 0 0 7px; color: #fff; text-align: left; font: 700 clamp(1.5rem,3vw,2.2rem)/1.2 'Manrope',sans-serif; letter-spacing: -.035em; }.qr-start-inner > div > p:last-child { margin: 0; color: #bdc9d5; font-size: .87rem; }.qr-start-button { max-width: 365px; min-height: 54px; flex: 0 0 auto; text-align: center; }
@media(max-width: 900px) { .qr-safety-layout { gap: 28px; }.qr-check-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.qr-check-card { min-height: 225px; } }
@media(max-width: 650px) { .qr-safety-hero { padding: 48px 0 45px; }.qr-safety-layout { grid-template-columns: 1fr; gap: 30px; }.qr-safety-copy h1 { font-size: clamp(2.55rem,12vw,3.4rem); }.qr-safety-lead { font-size: .96rem; }.qr-visual-card { padding: 16px; }.qr-faux-code { width: min(220px,65vw); }.qr-checks { padding: 52px 0 58px; }.qr-section-heading { margin-bottom: 22px; }.qr-check-grid { grid-template-columns: 1fr; gap: 10px; }.qr-check-card { min-height: 0; padding: 18px; }.qr-check-icon { margin-bottom: 14px; }.qr-start { padding: 32px 0; }.qr-start-inner { align-items: stretch; flex-direction: column; gap: 20px; }.qr-start-button { max-width: none; width: 100%; white-space: normal; } }


/* Distinct fictional social platform patterns; keep the ADNET simulation label visible. */
.platform-tabs { display:flex; align-items:center; gap:24px; min-height:45px; padding:0 20px; background:#fff; border:1px solid #e0e5e9; border-top:0; color:#738192; font-size:.72rem; }
.platform-tabs > span:not(.platform-tabs-note) { display:grid; align-items:center; height:45px; border-bottom:2px solid transparent; }
.platform-tabs > span.active { color:var(--service-accent); border-bottom-color:var(--service-accent); font-weight:700; }
.platform-tabs .platform-tabs-note { margin-left:auto; color:#96a0aa; font-size:.62rem; }
.theme-likedon { --service-accent:#3479a8; background:#eef2f5; }
.theme-likedon .platform-header { border-top:3px solid #3479a8; }
.theme-likedon .platform-symbol { color:#fff; background:#3479a8; border-radius:5px; }
.theme-likedon .profile-cover { background:linear-gradient(115deg,#c4d9e6,#e7edf0 60%,#cbd7dd); }
.theme-likedon .profile-avatar,.theme-likedon .post-avatar { background:#dce9ef; color:#326782; }
.theme-likedon .post-links a { color:#3479a8; }
.theme-instogram { --service-accent:#a84670; background:#f7f5f4; }
.theme-instogram .platform-symbol { color:#97435f; background:#f6e5e9; border-radius:50%; }
.theme-instogram .profile-cover { background:linear-gradient(120deg,#f1d7c7,#ecd4df 45%,#d5e2d3); }
.theme-instogram .profile-avatar,.theme-instogram .post-avatar { background:#f4e3e7; color:#97435f; }
.theme-instogram .post-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.theme-instogram .platform-post { overflow:hidden; padding:0 0 13px; }
.theme-instogram .post-meta,.theme-instogram .platform-post h3,.theme-instogram .platform-post > p,.theme-instogram .post-links,.theme-instogram .post-actions { margin-left:14px; margin-right:14px; }
.theme-instogram .post-meta { margin-top:13px; }
.theme-instogram .post-actions { gap:10px; font-size:.6rem; }
.photo-art { position:relative; display:grid; place-items:end start; min-height:132px; padding:11px; overflow:hidden; isolation:isolate; background:linear-gradient(150deg,#bacbd5 0 36%,#778e87 37% 56%,#d6c3a0 57%); }
.photo-art:before,.photo-art:after { content:""; position:absolute; z-index:-1; }
.photo-art:before { width:90px; height:90px; top:19px; right:25px; border-radius:50%; background:rgba(255,240,199,.8); }
.photo-art:after { inset:auto -10% -38px -10%; height:78px; border-radius:50% 50% 0 0; background:rgba(45,89,82,.68); }
.photo-art-1 { background:linear-gradient(165deg,#b9d1de,#dbe0dc 47%,#a6b7a0 48%,#718e77); }
.photo-art-2 { background:linear-gradient(135deg,#d8b6a9,#f0d7c9 49%,#8aa3a1 50%,#51757a); }
.photo-art-3 { background:linear-gradient(155deg,#b6c5df,#e4d3c5 54%,#c5a16e 55%,#6c8677); }
.photo-art span { padding:4px 7px; border-radius:3px; background:rgba(20,32,42,.68); color:#fff; font-size:.56rem; letter-spacing:.03em; }
.theme-midium { --service-accent:#765d48; background:#faf9f6; }
.theme-midium .platform-shell { max-width:960px; }
.theme-midium .platform-header,.theme-midium .platform-tabs { background:#fff; }
.theme-midium .platform-symbol { color:#fff; background:#765d48; border-radius:50%; }
.theme-midium .profile-cover { height:75px; background:linear-gradient(115deg,#e7dfd2,#f4f0e8 60%,#dfd6c9); }
.theme-midium .profile-avatar,.theme-midium .post-avatar { background:#eee8df; color:#765d48; }
.theme-midium .feed-section { background:#fff; }
.theme-midium .post-grid { grid-template-columns:1fr; max-width:790px; }
.theme-midium .platform-post { padding:25px 28px 20px; border:0; border-bottom:1px solid #ebe8e1; border-radius:0; }
.theme-midium .platform-post h3 { font:700 1.35rem/1.25 Georgia,serif; }
.theme-midium .platform-post > p { color:#4f4a44; font:1rem/1.75 Georgia,serif; }
.theme-midium .post-meta strong { color:#5c503f; }
.theme-midium .post-links a { color:#765d48; }
.theme-faxbook { --service-accent:#4778a8; background:#edf2f6; }
.theme-faxbook .platform-header { border-top:3px solid #4778a8; }
.theme-faxbook .platform-symbol { color:#fff; background:#4778a8; border-radius:6px; }
.theme-faxbook .profile-cover { background:linear-gradient(120deg,#c9d9e7,#dce8e1 55%,#d0d8e6); }
.theme-faxbook .profile-avatar,.theme-faxbook .post-avatar { background:#dce8f1; color:#3f6c91; }
.theme-faxbook .platform-post { border-left:3px solid #d8e4ed; }
.theme-faxbook .post-category { padding:3px 6px; border-radius:10px; background:#edf3f7; color:#50708b; }
.theme-faxbook .post-links a { color:#4778a8; }
@media(max-width:850px) { .theme-instogram .post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) {
  .platform-tabs { gap:17px; min-height:40px; padding:0 11px; }
  .platform-tabs > span:not(.platform-tabs-note) { height:40px; font-size:.68rem; }
  .platform-tabs .platform-tabs-note { display:none; }
  .theme-instogram .post-grid { grid-template-columns:1fr; }
  .photo-art { min-height:175px; }
  .theme-midium .platform-post { padding:19px 8px; }
}

/* Instogram photo grid and accessible image detail view */
.theme-instogram .feed-section { background:#fff; }
.theme-instogram .post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3px; max-width:940px; margin:0 auto; }
.instogram-tile { min-width:0; aspect-ratio:1; }
.instogram-photo-button { position:relative; display:block; width:100%; height:100%; padding:0; overflow:hidden; border:0; background:#e9e4e1; cursor:pointer; }
.instogram-photo-button img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
.instogram-photo-button:hover img,.instogram-photo-button:focus-visible img { transform:scale(1.04); }
.photo-tile-overlay { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; padding:12px; background:rgba(30,24,28,.48); color:#fff; text-align:center; opacity:0; transition:opacity .18s ease; }
.photo-tile-overlay strong { font-size:.78rem; line-height:1.35; }.photo-tile-overlay span { font-size:.68rem; }
.instogram-photo-button:hover .photo-tile-overlay,.instogram-photo-button:focus-visible .photo-tile-overlay { opacity:1; }
.instogram-photo-button:focus-visible { outline:3px solid #a84670; outline-offset:2px; z-index:1; }
.photo-detail { width:min(1080px,calc(100vw - 48px)); max-width:none; max-height:calc(100dvh - 48px); padding:0; overflow:visible; border:0; border-radius:8px; background:transparent; color:#263746; }
.photo-detail::backdrop { background:rgba(12,18,25,.78); backdrop-filter:blur(3px); }
.photo-detail-card { display:grid; grid-template-columns:minmax(0,1fr) 370px; width:100%; height:min(720px,calc(100dvh - 48px)); overflow:hidden; border-radius:8px; background:#fff; box-shadow:0 24px 80px rgba(0,0,0,.35); }
.photo-detail-image { display:grid; place-items:center; min-width:0; min-height:0; overflow:hidden; background:#171717; }
.photo-detail-image img { display:block; width:100%; height:100%; object-fit:contain; }
.photo-detail-side { display:flex; min-width:0; min-height:0; flex-direction:column; overflow:auto; background:#fff; }
.photo-detail-header { position:relative; display:flex; align-items:center; gap:10px; padding:15px 48px 15px 16px; border-bottom:1px solid #ececef; }
.photo-detail-avatar { display:grid; place-items:center; width:36px; height:36px; flex:0 0 36px; border-radius:50%; background:#f4e3e7; color:#97435f; font-weight:800; }
.photo-detail-header div { display:flex; min-width:0; flex-direction:column; gap:3px; }.photo-detail-header strong { color:#243746; font-size:.78rem; }.photo-detail-header div span { color:#7c8792; font-size:.66rem; }
.photo-detail-close { position:absolute; top:9px; right:11px; display:grid; place-items:center; width:36px; height:36px; border:0; border-radius:50%; background:transparent; color:#536273; font-size:1.8rem; line-height:1; cursor:pointer; }.photo-detail-close:hover { background:#f2f3f4; }
.photo-detail-bio { padding:14px 17px; border-bottom:1px solid #ececef; background:#faf8f9; }.photo-detail-bio strong { color:#81445a; font-size:.7rem; letter-spacing:.04em; text-transform:uppercase; }.photo-detail-bio p { margin:6px 0 0; color:#566575; font-size:.74rem; line-height:1.55; }
.photo-detail-caption { padding:19px 17px 8px; }.photo-detail-caption h2 { margin:0 0 10px; color:#263746; text-align:left; font:700 1.08rem/1.35 'Manrope',sans-serif; letter-spacing:-.02em; }.photo-detail-caption p { margin:0; color:#596a79; font-size:.8rem; line-height:1.7; }.photo-detail-caption p strong { margin-right:5px; color:#304355; }
.photo-detail-links { display:flex; flex-wrap:wrap; gap:8px; padding:5px 17px 14px; }.photo-detail-links a { color:#97435f; font-size:.72rem; font-weight:700; text-decoration:none; }.photo-detail-links a:hover { text-decoration:underline; }
.photo-detail-reactions { display:flex; gap:13px; margin-top:auto; padding:13px 17px; border-top:1px solid #ececef; color:#7d8994; font-size:.67rem; }
.photo-detail-disclaimer { display:block; padding:0 17px 15px; color:#8d969e; font-size:.62rem; line-height:1.45; }
@media(max-width:760px) {
  .photo-detail { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); }
  .photo-detail-card { grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(180px,42dvh) minmax(0,1fr); height:min(820px,calc(100dvh - 20px)); }
  .photo-detail-side { overflow:auto; }
}
@media(prefers-reduced-motion:reduce) { .instogram-photo-button img,.photo-tile-overlay { transition:none; } }

/* Instogram fictional account directory and profile cards */
.instogram-profile-link { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 25px; border-top:1px solid #f0e9ec; color:#7c6870; font-size:.72rem; }
.instogram-profile-link a { color:#97435f; font-weight:800; text-decoration:none; }.instogram-profile-link a:hover { text-decoration:underline; }
.platform-tabs a { color:#687987; text-decoration:none; }.platform-tabs a:hover { color:var(--service-accent); }
.instogram-directory-page,.instogram-person-page { min-height:100vh; padding:34px 20px 70px; background:#f6f3f2; }
.instogram-directory-shell,.instogram-person-shell { max-width:1120px; margin:0 auto; }
.instogram-directory-back { display:inline-block; margin:0 0 16px; color:#765f69; font-size:.76rem; text-decoration:none; }.instogram-directory-back:hover { color:#97435f; text-decoration:underline; }
.instogram-directory-hero { padding:30px clamp(22px,5vw,58px) 32px; border:1px solid #eee5e7; border-radius:12px 12px 0 0; background:linear-gradient(135deg,#fff 0%,#fbf7f7 58%,#f7e9ec 100%); }
.instogram-directory-brand { display:flex; align-items:center; gap:9px; margin-bottom:28px; color:#3d3035; font:800 1.05rem 'Manrope',sans-serif; }.instogram-directory-brand span { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:#f4e3e7; color:#97435f; }.instogram-directory-brand small { margin-left:auto; padding:5px 8px; border-radius:99px; background:#f3e6e9; color:#97435f; font:700 .56rem 'DM Sans',sans-serif; letter-spacing:.1em; }
.instogram-directory-hero .eyebrow,.instogram-directory-results .eyebrow { margin:0 0 8px; color:#a04869; font-size:.65rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.instogram-directory-hero h1 { margin:0; color:#29242a; text-align:left; font:700 clamp(2rem,4.5vw,3.4rem)/1.12 'Manrope',sans-serif; letter-spacing:-.045em; }.instogram-directory-hero h1 span { color:#a84670; }
.instogram-directory-hero > p:not(.eyebrow) { max-width:690px; margin:15px 0 23px; color:#6f656c; font-size:.9rem; line-height:1.7; }
.instogram-directory-counts { display:flex; flex-wrap:wrap; gap:9px 23px; padding-top:17px; border-top:1px solid #eee4e7; color:#827780; font-size:.69rem; }.instogram-directory-counts strong { margin-right:4px; color:#a84670; font-size:.9rem; }
.instogram-directory-results { padding:27px clamp(16px,3vw,32px) 24px; border:1px solid #eee5e7; border-top:0; border-radius:0 0 12px 12px; background:#fff; }
.instogram-directory-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:16px; }.instogram-directory-heading h2 { margin:0; color:#30282d; font:700 1.3rem 'Manrope',sans-serif; }.instogram-fiction-tag { display:inline-flex; align-items:center; padding:6px 9px; border-radius:99px; background:#f7e9ed; color:#964666; font-size:.61rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.instogram-directory-search { display:flex; gap:9px; margin-bottom:20px; }.instogram-directory-search input { flex:1; min-width:0; padding:11px 13px; border:1px solid #e5dce0; border-radius:6px; color:#40383d; font:inherit; font-size:.78rem; }.instogram-directory-search button { padding:0 17px; border:0; border-radius:6px; background:#a84670; color:white; font:700 .75rem 'DM Sans',sans-serif; cursor:pointer; }.instogram-directory-search button:hover { background:#8d365d; }.instogram-directory-search > a { align-self:center; color:#8b6574; font-size:.72rem; }
.instogram-people-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }.instogram-person-card { min-width:0; overflow:hidden; border:1px solid #ede5e8; border-radius:8px; background:#fff; transition:box-shadow .18s ease,transform .18s ease; }.instogram-person-card:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(63,35,47,.09); }.instogram-person-card > a { display:block; height:100%; padding:13px; color:inherit; text-decoration:none; }.instogram-person-top { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }.instogram-person-top img { width:44px; height:44px; border-radius:50%; object-fit:cover; background:#f1e5e8; }.instogram-level { padding:4px 7px; border-radius:99px; background:#f6f1f2; color:#88727b; font-size:.58rem; }.instogram-person-card h3 { margin:0; color:#322b30; font:700 .86rem 'Manrope',sans-serif; }.instogram-person-handle { margin:2px 0 9px; color:#a07888; font-size:.65rem; }.instogram-person-bio { min-height:42px; margin:0 0 7px; color:#655b61; font-size:.69rem; line-height:1.5; }.instogram-person-city { margin:0 0 10px; color:#958991; font-size:.61rem; }.instogram-person-activity { display:flex; flex-direction:column; gap:4px; min-height:67px; margin:0; padding:9px; border-radius:5px; background:#faf7f8; color:#62585e; font-size:.65rem; line-height:1.45; }.instogram-person-activity span { color:#a07888; font-size:.55rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.instogram-person-open { display:block; margin-top:11px; color:#a84670; font-size:.65rem; font-weight:800; }.instogram-empty { grid-column:1/-1; padding:30px; text-align:center; color:#72656c; }
.instogram-directory-note { margin:19px 0 0; padding:12px 14px; border-radius:6px; background:#f8f3f4; color:#796a71; font-size:.68rem; line-height:1.55; }
.instogram-person-profile { overflow:hidden; border:1px solid #eee5e7; border-radius:10px; background:#fff; }.instogram-person-cover { height:155px; background:linear-gradient(120deg,#f1d7c7,#ecd4df 48%,#d5e2d3); }.instogram-person-profile-main { position:relative; display:grid; grid-template-columns:100px minmax(0,1fr) auto; align-items:center; gap:14px 20px; padding:0 28px 22px; }.instogram-person-profile-avatar { width:100px; height:100px; margin-top:-38px; border:5px solid white; border-radius:50%; object-fit:cover; background:#f4e3e7; }.instogram-person-identity .instogram-fiction-tag { margin-bottom:7px; }.instogram-person-identity h1 { margin:0; color:#30282d; text-align:left; font:700 1.55rem 'Manrope',sans-serif; }.instogram-person-identity > p { margin:3px 0 0; color:#927d86; font-size:.76rem; }.instogram-person-followers { display:flex; flex-direction:column; align-items:flex-end; color:#887780; font-size:.67rem; }.instogram-person-followers strong { color:#a84670; font-size:1.05rem; }.instogram-person-bio-block { grid-column:2/4; }.instogram-person-bio-block h2 { margin:0 0 5px; color:#4a3a42; font:700 .72rem 'DM Sans',sans-serif; text-transform:uppercase; letter-spacing:.08em; }.instogram-person-bio-block p { margin:0; color:#61565d; font-size:.78rem; line-height:1.6; }.instogram-person-bio-block .instogram-person-city { margin-top:7px; color:#998991; font-size:.67rem; }.instogram-person-latest { margin:0 28px 22px; padding:14px 16px; border-radius:6px; background:#faf7f8; }.instogram-person-latest .eyebrow { margin:0 0 5px; color:#a04869; font-size:.58rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.instogram-person-latest > p:last-child { margin:0; color:#5e535a; font-size:.78rem; line-height:1.6; }.instogram-person-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3px; }.instogram-person-gallery img { display:block; width:100%; aspect-ratio:1; object-fit:cover; background:#eee6e9; }.instogram-person-disclaimer { margin:0; padding:13px 17px; color:#897c82; font-size:.65rem; line-height:1.5; }
@media(max-width:800px) { .instogram-people-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) { .instogram-directory-page,.instogram-person-page { padding:18px 11px 45px; }.instogram-directory-hero { padding:23px 18px; }.instogram-directory-brand { margin-bottom:22px; }.instogram-directory-counts { gap:8px 14px; }.instogram-directory-results { padding:21px 13px; }.instogram-directory-search { flex-wrap:wrap; }.instogram-directory-search button { min-height:42px; }.instogram-directory-search > a { padding:9px; }.instogram-people-grid { gap:8px; }.instogram-person-card > a { padding:10px; }.instogram-person-activity { min-height:90px; }.instogram-profile-link { align-items:flex-start; flex-direction:column; }.instogram-person-profile-main { grid-template-columns:72px minmax(0,1fr); gap:10px 14px; padding:0 17px 18px; }.instogram-person-profile-avatar { width:72px; height:72px; margin-top:-28px; }.instogram-person-identity h1 { font-size:1.25rem; }.instogram-person-followers { grid-column:1/-1; flex-direction:row; align-items:center; gap:6px; }.instogram-person-bio-block { grid-column:1/-1; }.instogram-person-latest { margin:0 17px 17px; }.instogram-person-cover { height:125px; } }
@media(prefers-reduced-motion:reduce) { .instogram-person-card { transition:none; } }

/* Dedicated home pages for each fictional social service */
.network-home { min-height:100vh; padding:26px 20px 64px; background:#f3f5f6; }
.network-home-shell { max-width:1080px; margin:0 auto; overflow:hidden; border:1px solid #e3e7e9; border-radius:10px; background:#fff; box-shadow:0 12px 38px rgba(35,49,57,.05); }
.network-home-header { display:flex; align-items:center; gap:16px; padding:13px 22px; border-bottom:1px solid #edf0f1; background:#fff; }
.network-home-brand { display:flex; align-items:center; gap:9px; color:#263a49; font:800 1rem 'Manrope',sans-serif; text-decoration:none; }.network-home-brand > span { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:#eaf2dc; color:#587622; }
.theme-instogram .network-home-brand > span { border-radius:50%; background:#f6e5e9; color:#97435f; }.theme-midium .network-home-brand > span { background:#ece8f6; color:#62518b; }.theme-faxbook .network-home-brand > span { background:#e0efec; color:#27736d; }
.network-home-header > p { margin:0; color:#82909a; font-size:.7rem; }.network-home-header .simulated-pill { margin-left:auto; }
.network-home-nav { display:flex; align-items:center; gap:23px; padding:0 23px; border-bottom:1px solid #edf0f1; }.network-home-nav a,.network-home-nav span { padding:14px 0 12px; border-bottom:2px solid transparent; color:#71808a; font-size:.72rem; text-decoration:none; }.network-home-nav .is-current { border-bottom-color:var(--service-accent); color:#354854; font-weight:800; }
.network-home-hero { display:flex; align-items:center; justify-content:space-between; gap:25px; min-height:285px; padding:38px clamp(24px,5vw,58px); background:linear-gradient(115deg,#f5f7ef,#fff 50%,#f0f3f4); }.theme-instogram .network-home-hero { background:linear-gradient(115deg,#fff7f7,#fff 48%,#f8e8ed); }.theme-midium .network-home-hero { background:linear-gradient(115deg,#f7f5fb,#fff 48%,#eeeaf7); }.theme-faxbook .network-home-hero { background:linear-gradient(115deg,#f2f8f6,#fff 48%,#e7f2ef); }
.network-home-hero-copy { max-width:650px; }.network-home-eyebrow { margin:0 0 10px; color:var(--service-accent); font-size:.63rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }.network-home-hero h1 { max-width:610px; margin:0; color:#263945; text-align:left; font:700 clamp(2rem,4.5vw,3.4rem)/1.12 'Manrope',sans-serif; letter-spacing:-.045em; }.network-home-hero-copy > p:not(.network-home-eyebrow) { max-width:610px; margin:13px 0 20px; color:#657580; font-size:.87rem; line-height:1.7; }.network-home-cta { display:inline-flex; align-items:center; gap:13px; padding:11px 15px; border-radius:5px; background:var(--service-accent); color:white; font-size:.72rem; font-weight:800; text-decoration:none; }.network-home-cta:hover { filter:brightness(.92); }
.network-home-hero-mark { display:grid; place-items:center; width:154px; height:154px; flex:0 0 154px; border:1px solid rgba(255,255,255,.9); border-radius:50%; background:rgba(255,255,255,.65); box-shadow:0 12px 35px rgba(52,71,80,.07); color:var(--service-accent); font:700 4rem 'Manrope',sans-serif; }.theme-instogram .network-home-hero-mark { border-radius:42% 58% 53% 47%/45% 43% 57% 55%; }
.network-home-feed,.network-home-services { padding:26px clamp(18px,3.5vw,36px); }.network-home-section-heading { display:flex; align-items:end; justify-content:space-between; gap:15px; margin-bottom:15px; }.network-home-section-heading h2 { margin:0; color:#2d3f4b; text-align:left; font:700 1.25rem 'Manrope',sans-serif; }.network-home-section-heading > a { color:var(--service-accent); font-size:.68rem; font-weight:800; text-decoration:none; }
.network-home-posts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }.network-home-post { overflow:hidden; border:1px solid #e8edef; border-radius:7px; background:#fff; }.network-home-post-image { display:block; aspect-ratio:1.65; overflow:hidden; background:#edf0f1; }.network-home-post-image img { display:block; width:100%; height:100%; object-fit:cover; }.network-home-post-content { padding:14px; }.network-home-post-meta { margin:0 0 7px; color:#89959c; font-size:.6rem; }.network-home-post h3 { margin:0 0 7px; color:#304552; font:700 .88rem/1.4 'Manrope',sans-serif; }.network-home-post-content > p:not(.network-home-post-meta) { display:-webkit-box; min-height:63px; margin:0 0 10px; overflow:hidden; color:#657580; font-size:.68rem; line-height:1.55; -webkit-line-clamp:3; -webkit-box-orient:vertical; }.network-home-post-content > a { color:var(--service-accent); font-size:.64rem; font-weight:800; text-decoration:none; }
.network-home-services { border-top:1px solid #eef1f2; background:#fbfcfc; }.network-home-service-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }.network-home-service-card { display:flex; align-items:center; gap:10px; min-width:0; padding:12px; border:1px solid #e7ecee; border-radius:6px; background:#fff; color:#536570; text-decoration:none; }.network-home-service-card:hover,.network-home-service-card.selected { border-color:color-mix(in srgb,var(--service-accent) 40%,white); background:color-mix(in srgb,var(--service-accent) 5%,white); }.network-home-service-icon { display:grid; place-items:center; width:32px; height:32px; flex:0 0 32px; border-radius:8px; background:#eaf2dc; color:#587622; font-weight:800; }.theme-instogram .network-home-service-icon { background:#f6e5e9; color:#97435f; border-radius:50%; }.theme-midium .network-home-service-icon { background:#ece8f6; color:#62518b; }.theme-faxbook .network-home-service-icon { background:#e0efec; color:#27736d; }.network-home-service-card > span:nth-child(2) { display:flex; min-width:0; flex-direction:column; gap:3px; }.network-home-service-card strong { overflow:hidden; color:#354955; font-size:.68rem; text-overflow:ellipsis; }.network-home-service-card small { overflow:hidden; color:#84919a; font-size:.56rem; text-overflow:ellipsis; white-space:nowrap; }.network-home-service-arrow { margin-left:auto; color:var(--service-accent); }
.network-home-footer { padding:14px 20px; border-top:1px solid #edf0f1; color:#89959b; text-align:center; font-size:.62rem; }
@media(max-width:800px) { .network-home-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.network-home-hero-mark { width:115px; height:115px; flex-basis:115px; font-size:3rem; } }
@media(max-width:580px) { .network-home { padding:10px 8px 35px; }.network-home-header { gap:10px; padding:11px 13px; }.network-home-header > p { font-size:.62rem; }.network-home-nav { gap:16px; padding:0 14px; overflow:auto; }.network-home-hero { min-height:0; padding:29px 20px; }.network-home-hero-mark { display:none; }.network-home-posts { grid-template-columns:1fr; }.network-home-post { display:grid; grid-template-columns:100px minmax(0,1fr); }.network-home-post-image { aspect-ratio:1; }.network-home-post-content { padding:11px; }.network-home-post-content > p:not(.network-home-post-meta) { min-height:0; -webkit-line-clamp:2; }.network-home-service-grid { gap:7px; }.network-home-service-card { gap:7px; padding:9px; }.network-home-service-icon { width:28px; height:28px; flex-basis:28px; } }

/* Local search entry point for the OSINT exercise */
.osint-search-page { min-height:calc(100vh - 70px); display:flex; flex-direction:column; background:#fff; color:#202124; font-family:Arial,Helvetica,sans-serif; }
.search-topbar { min-height:70px; display:flex; align-items:center; gap:25px; padding:10px 28px; border-bottom:1px solid #ebedef; }.search-simulation-brand { display:flex; align-items:center; gap:13px; text-decoration:none; }.search-google-word { display:inline-flex; align-items:center; font:500 2rem Arial,Helvetica,sans-serif; letter-spacing:-.08em; }.search-google-word i { font-style:normal; }.search-google-word i:nth-child(1),.search-google-word i:nth-child(4) { color:#4285f4; }.search-google-word i:nth-child(2),.search-google-word i:nth-child(6) { color:#ea4335; }.search-google-word i:nth-child(3) { color:#fbbc05; }.search-google-word i:nth-child(5) { color:#34a853; }.search-simulation-badge { padding:5px 8px; border:1px solid #f0d9a1; border-radius:4px; background:#fff8e7; color:#89641a; font-size:.58rem; font-weight:800; letter-spacing:.07em; }.search-top-note { margin-left:auto; color:#7b858e; font-size:.68rem; text-align:right; }
.search-main { width:min(100% - 36px,970px); margin:60px auto 60px; }.search-main:not(.has-results) { display:flex; flex-direction:column; align-items:center; margin-top:95px; }.search-empty-brand { margin-bottom:26px; }.search-empty-brand .search-google-word { font-size:5rem; letter-spacing:-.085em; }
.osint-search-form { position:relative; display:flex; align-items:center; width:min(100%,720px); min-height:48px; margin:0 auto; padding:0 15px 0 42px; border:1px solid #dfe1e5; border-radius:28px; background:#fff; box-shadow:0 1px 6px rgba(32,33,36,.14); }.has-results .osint-search-form { width:min(100%,690px); margin:0; }.osint-search-form:hover,.osint-search-form:focus-within { border-color:transparent; box-shadow:0 1px 7px rgba(32,33,36,.25); }.osint-search-icon { position:absolute; left:17px; color:#8a929b; font-size:1.2rem; }.osint-search-form input { width:100%; min-width:0; padding:13px 8px; border:0; outline:0; color:#25282c; background:transparent; font:400 1rem Arial,Helvetica,sans-serif; }.osint-search-form input::-webkit-search-cancel-button { display:none; }.osint-search-clear { padding:5px 10px; color:#69747e; font-size:1.3rem; text-decoration:none; }.osint-search-form button { margin-left:7px; padding:9px 13px; border:0; border-radius:5px; background:#f8f9fa; color:#3c4043; font:400 .78rem Arial,Helvetica,sans-serif; white-space:nowrap; cursor:pointer; }.osint-search-form button:hover { box-shadow:0 1px 2px rgba(0,0,0,.18); }
.search-empty-intro { margin-top:24px; color:#59636d; text-align:center; font-size:.82rem; line-height:1.65; }.search-empty-intro p { margin:4px; }.search-empty-intro strong { color:#303840; }.search-shortcuts { display:flex; flex-wrap:wrap; justify-content:center; gap:9px; margin-top:32px; color:#727b83; font-size:.7rem; }.search-shortcuts a { padding:7px 11px; border:1px solid #e5e8ea; border-radius:18px; color:#596671; text-decoration:none; }.search-shortcuts a:hover { background:#f6f8f9; }
.search-results-layout { display:grid; grid-template-columns:minmax(0,690px) minmax(220px,1fr); gap:38px; margin-top:18px; }.search-results-count { margin:0 0 20px; color:#707981; font-size:.72rem; }.search-result-card { margin:0 0 24px; }.search-result-url { display:flex; align-items:center; gap:7px; color:#4d5962; font-size:.68rem; }.search-result-favicon { display:grid; place-items:center; width:23px; height:23px; border:1px solid #e2e5e7; border-radius:50%; background:#fafafa; color:#64727c; font-size:.65rem; }.search-result-card h2 { margin:5px 0 4px; text-align:left; font:400 1.14rem Arial,Helvetica,sans-serif; letter-spacing:0; }.search-result-card h2 a { color:#1a0dab; text-decoration:none; }.search-result-card h2 a:hover { text-decoration:underline; }.search-result-card > p { margin:0; color:#4d555c; font-size:.78rem; line-height:1.55; }.search-result-tag { display:inline-block; margin-top:6px; color:#8a9298; font-size:.6rem; }.search-knowledge-card { align-self:start; margin-top:37px; padding:19px; border:1px solid #dadce0; border-radius:8px; }.search-card-eyebrow { margin:0 0 8px; color:#7d8790; font-size:.6rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.search-knowledge-card h2 { margin:0 0 8px; color:#303840; text-align:left; font:500 1.05rem Arial,Helvetica,sans-serif; }.search-knowledge-card > p:not(.search-card-eyebrow) { color:#58636c; font-size:.74rem; line-height:1.55; }.search-knowledge-card ul { padding-left:18px; color:#4d5962; font-size:.72rem; line-height:1.8; }.search-knowledge-card > span { display:block; padding-top:10px; border-top:1px solid #eceff1; color:#858d94; font-size:.64rem; }.search-no-results { padding:25px 0; color:#59636d; }.search-no-results h2 { color:#323a40; font-size:1rem; }.search-no-results p { font-size:.78rem; line-height:1.6; }.search-no-results a { color:#1a0dab; }
.search-footer { display:flex; flex-wrap:wrap; align-items:center; gap:10px 25px; margin-top:auto; padding:16px 28px; border-top:1px solid #e7eaed; background:#f7f8f9; color:#747f87; font-size:.64rem; }.search-footer a { margin-left:auto; color:#53626d; text-decoration:none; }.search-footer a:hover { text-decoration:underline; }
@media(max-width:760px) { .search-results-layout { grid-template-columns:1fr; gap:15px; }.search-knowledge-card { grid-row:1; margin:0 0 10px; }.search-main.has-results { margin-top:25px; }.search-knowledge-card ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.search-footer a { margin-left:0; } }
@media(max-width:520px) { .search-topbar { align-items:flex-start; flex-direction:column; gap:8px; padding:12px 16px; }.search-top-note { margin:0; text-align:left; }.search-main { width:calc(100% - 28px); margin:40px auto; }.search-main:not(.has-results) { margin-top:65px; }.search-empty-brand .search-google-word { font-size:4.1rem; }.osint-search-form { padding-left:36px; }.osint-search-form input { font-size:.87rem; }.osint-search-form button { padding:9px 8px; font-size:.67rem; }.search-results-layout { gap:8px; }.search-footer { padding:14px 16px; } }

/* Midium author and Faxbook member directories */
.profile-directory-page,.profile-person-page { min-height:80vh; padding:32px 20px 70px; background:#f4f3f8; }.theme-faxbook.profile-directory-page,.theme-faxbook.profile-person-page { background:#f1f6f5; }
.profile-directory-shell,.profile-person-shell { max-width:1120px; margin:0 auto; }.profile-person-shell { max-width:820px; }
.profile-directory-back { display:inline-block; margin:0 0 15px; color:var(--service-accent); font-size:.76rem; text-decoration:none; }.profile-directory-back:hover { text-decoration:underline; }
.profile-directory-hero { padding:30px clamp(20px,4vw,42px); border:1px solid #e4e0ef; border-radius:9px; background:linear-gradient(125deg,#fff 0 62%,#efecf8 62% 100%); }.theme-faxbook .profile-directory-hero { border-color:#d8e8e4; background:linear-gradient(125deg,#fff 0 62%,#e5f1ee 62% 100%); }
.profile-directory-brand { display:flex; align-items:center; gap:9px; margin-bottom:22px; color:#403858; }.theme-faxbook .profile-directory-brand { color:#34554f; }.profile-directory-brand > span { display:grid; place-items:center; width:32px; height:32px; border-radius:7px; background:#ece8f6; color:#62518b; font-weight:800; }.theme-faxbook .profile-directory-brand > span { background:#e0efec; color:#27736d; }.profile-directory-brand strong { font:800 1rem 'Manrope',sans-serif; }.profile-directory-brand small { margin-left:auto; color:#8173a5; font-size:.58rem; font-weight:800; letter-spacing:.1em; }.theme-faxbook .profile-directory-brand small { color:#47877e; }
.profile-directory-hero .eyebrow,.profile-directory-heading .eyebrow { margin:0 0 7px; color:var(--service-accent); font-size:.63rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.profile-directory-hero h1 { margin:0; color:#302b3d; text-align:left; font:800 clamp(2rem,4.4vw,3.35rem)/1.1 'Manrope',sans-serif; letter-spacing:-.045em; }.theme-faxbook .profile-directory-hero h1 { color:#293e3c; }.profile-directory-hero h1 span { color:var(--service-accent); }.profile-directory-lead { max-width:690px; margin:14px 0 21px; color:#6d687b; font-size:.86rem; line-height:1.65; }.theme-faxbook .profile-directory-lead { color:#637672; }
.profile-directory-counts { display:flex; flex-wrap:wrap; gap:8px; }.profile-directory-counts span { padding:7px 10px; border:1px solid #e3deef; border-radius:5px; background:rgba(255,255,255,.8); color:#706987; font-size:.66rem; }.profile-directory-counts strong { color:var(--service-accent); }
.profile-directory-results { margin-top:22px; padding:24px; border:1px solid #e4e2ea; border-radius:8px; background:#fbfafc; }.theme-faxbook .profile-directory-results { border-color:#dce9e6; background:#fbfdfc; }.profile-directory-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:16px; }.profile-directory-heading h2 { margin:0; color:#393448; text-align:left; font:700 1.3rem 'Manrope',sans-serif; }.theme-faxbook .profile-directory-heading h2 { color:#314542; }.profile-directory-fake { display:inline-block; padding:5px 8px; border-radius:99px; background:#ece8f6; color:#62518b; font-size:.59rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }.theme-faxbook .profile-directory-fake { background:#e0efec; color:#27736d; }
.profile-directory-search { display:flex; gap:9px; margin-bottom:17px; }.profile-directory-search input { min-width:0; flex:1; min-height:43px; padding:9px 12px; border:1px solid #dedbe6; border-radius:5px; background:#fff; color:#403a4b; font-size:.77rem; }.profile-directory-search button { padding:0 16px; border:0; border-radius:5px; background:var(--service-accent); color:#fff; font-size:.72rem; font-weight:800; cursor:pointer; }.profile-directory-search > a { align-self:center; color:var(--service-accent); font-size:.72rem; }
.profile-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.profile-directory-card { min-width:0; border:1px solid #e6e3ed; border-radius:6px; background:white; transition:transform .16s ease,box-shadow .16s ease; }.theme-faxbook .profile-directory-card { border-color:#e0eae8; }.profile-directory-card:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(61,48,79,.08); }.profile-directory-card > a { display:block; height:100%; padding:14px; color:inherit; text-decoration:none; }.profile-directory-card-top { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:11px; }.profile-directory-avatar { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:#ece8f6; color:#62518b; font:700 .95rem 'Manrope',sans-serif; }.theme-faxbook .profile-directory-avatar { background:#e0efec; color:#27736d; }.profile-directory-level { padding:4px 7px; border-radius:3px; background:#f3f1f7; color:#7c748e; font-size:.58rem; }.theme-faxbook .profile-directory-level { background:#eff5f3; color:#68837e; }.profile-directory-card h3 { margin:0 0 3px; color:#393448; font:700 .88rem 'Manrope',sans-serif; }.theme-faxbook .profile-directory-card h3 { color:#314542; }.profile-directory-handle { margin:0 0 8px; color:#857a9c; font-size:.63rem; }.profile-directory-bio { min-height:40px; margin:0 0 6px; color:#686273; font-size:.67rem; line-height:1.5; }.theme-faxbook .profile-directory-bio { color:#63716e; }.profile-directory-city { margin:0 0 9px; color:#90899b; font-size:.6rem; }.profile-directory-activity { display:flex; flex-direction:column; gap:4px; min-height:74px; margin:0; padding:9px; border-radius:4px; background:#f7f5fa; color:#625c6d; font-size:.63rem; line-height:1.45; }.theme-faxbook .profile-directory-activity { background:#f2f7f5; color:#5d6b68; }.profile-directory-activity span { color:var(--service-accent); font-size:.54rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.profile-directory-open { display:block; margin-top:10px; color:var(--service-accent); font-size:.64rem; font-weight:800; }.profile-directory-empty { grid-column:1/-1; padding:30px; text-align:center; color:#716a7b; }.profile-directory-note { margin:17px 0 0; padding:12px; border-radius:5px; background:#f0eef5; color:#777083; font-size:.65rem; line-height:1.55; }.theme-faxbook .profile-directory-note { background:#edf5f2; color:#697b76; }
.profile-person-card { overflow:hidden; border:1px solid #e3dfec; border-radius:8px; background:#fff; box-shadow:0 13px 40px rgba(61,48,79,.07); }.theme-faxbook .profile-person-card { border-color:#dce8e5; }.profile-person-cover { height:155px; background:linear-gradient(120deg,#dcd7ed,#eeebf5 55%,#d5d0e7); }.theme-faxbook .profile-person-cover { background:linear-gradient(120deg,#cbe3dd,#e5efec 55%,#cfdfd9); }.profile-person-main { display:grid; grid-template-columns:86px minmax(0,1fr) auto; align-items:center; gap:13px 18px; padding:0 27px 22px; }.profile-person-avatar { display:grid; place-items:center; width:86px; height:86px; margin-top:-37px; border:5px solid #fff; border-radius:50%; background:#7565a7; color:white; font:800 1.65rem 'Manrope',sans-serif; }.theme-faxbook .profile-person-avatar { background:#35877e; }.profile-person-identity .profile-directory-fake { margin-bottom:7px; }.profile-person-identity h1 { margin:0; color:#332e40; text-align:left; font:800 1.6rem 'Manrope',sans-serif; }.theme-faxbook .profile-person-identity h1 { color:#2d423e; }.profile-person-identity > p { margin:3px 0 0; color:#847b97; font-size:.74rem; }.profile-person-metric { display:flex; flex-direction:column; align-items:flex-end; color:#8a8298; font-size:.62rem; }.profile-person-metric strong { color:var(--service-accent); font-size:1rem; }.profile-person-bio { grid-column:2/4; }.profile-person-bio h2 { margin:0 0 5px; color:#5f5773; font-size:.69rem; letter-spacing:.08em; text-transform:uppercase; }.profile-person-bio > p { margin:0; color:#5f5a6d; font-size:.77rem; line-height:1.6; }.profile-person-bio .profile-directory-city { margin-top:7px; color:#8b8495; font-size:.64rem; }.profile-person-activity { margin:0 27px 18px; padding:14px 16px; border-radius:5px; background:#f7f5fa; }.theme-faxbook .profile-person-activity { background:#f2f7f5; }.profile-person-activity .eyebrow { margin:0 0 6px; color:var(--service-accent); font-size:.58rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.profile-person-activity > p:last-child { margin:0; color:#5f5a6d; font-size:.77rem; line-height:1.6; }.profile-person-disclaimer { display:flex; gap:13px; align-items:flex-start; padding:13px 17px; border-top:1px solid #ece9f0; color:#807a8b; font-size:.65rem; line-height:1.5; }.profile-person-disclaimer strong { flex:0 0 auto; color:var(--service-accent); }.profile-person-disclaimer p { margin:0; }
@media(max-width:850px) { .profile-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:580px) { .profile-directory-page,.profile-person-page { padding:17px 11px 48px; }.profile-directory-hero { padding:22px 17px; background:#fff; }.profile-directory-results { padding:16px 11px; }.profile-directory-heading h2 { font-size:1.08rem; }.profile-directory-search { flex-wrap:wrap; }.profile-directory-search input { flex-basis:100%; }.profile-directory-search button { min-height:41px; }.profile-directory-grid { grid-template-columns:1fr; gap:8px; }.profile-directory-card > a { padding:12px; }.profile-directory-bio,.profile-directory-activity { min-height:0; }.profile-person-main { grid-template-columns:66px minmax(0,1fr); gap:9px 13px; padding:0 17px 17px; }.profile-person-avatar { width:66px; height:66px; margin-top:-28px; }.profile-person-identity h1 { font-size:1.25rem; }.profile-person-metric { grid-column:1/-1; flex-direction:row; align-items:center; gap:5px; }.profile-person-bio { grid-column:1/-1; }.profile-person-activity { margin:0 17px 16px; }.profile-person-cover { height:120px; }.profile-person-disclaimer { flex-direction:column; gap:4px; } }
@media(prefers-reduced-motion:reduce) { .profile-directory-card { transition:none; } }

/* Faxbook takes cues from familiar social-network layouts while staying fictional */
.theme-faxbook.osint-lab { padding-top:0; background:#f0f2f5; }
.theme-faxbook .platform-shell { max-width:1400px; padding:0 22px; }
.theme-faxbook .platform-header { position:relative; min-height:64px; gap:18px; padding:10px 20px; border:0; border-top:0; border-radius:0; box-shadow:0 1px 2px rgba(0,0,0,.12); }
.theme-faxbook .platform-brand { color:#26384d; }.theme-faxbook .platform-symbol { width:39px; height:39px; border-radius:50%; background:#1877f2; color:white; font:800 1.15rem 'Manrope',sans-serif; }
.theme-faxbook .platform-search { width:min(280px,30vw); border:0; border-radius:22px; background:#f0f2f5; }.theme-faxbook .platform-search input { padding:10px 14px; background:transparent; }.theme-faxbook .platform-search button { display:none; }
.theme-faxbook .simulated-pill { margin-left:auto; border-radius:12px; background:#e7f3ff; color:#1769c2; }
.theme-faxbook .platform-tabs { justify-content:center; gap:52px; min-height:54px; padding:0 18px; border:0; border-bottom:1px solid #dfe3e8; background:#fff; }
.theme-faxbook .platform-tabs > span:not(.platform-tabs-note),.theme-faxbook .platform-tabs > a { height:54px; padding:0 18px; font-size:.76rem; }.theme-faxbook .platform-tabs > span.active { border-bottom:3px solid #1877f2; color:#1877f2; }.theme-faxbook .platform-tabs a { color:#606770; }.theme-faxbook .platform-tabs .platform-tabs-note { display:none; }
.theme-faxbook .profile-panel { max-width:1000px; margin:0 auto; overflow:hidden; border:0; border-radius:0 0 10px 10px; box-shadow:0 1px 2px rgba(0,0,0,.12); }.theme-faxbook .profile-cover { height:270px; background:linear-gradient(130deg,#ccd7e5,#a9bdd2 42%,#dfe5ec 43%,#b6c7d8); }
.theme-faxbook .profile-details { min-height:145px; align-items:center; gap:18px; padding:0 28px 14px; }.theme-faxbook .profile-avatar { width:142px; height:142px; flex-basis:142px; margin-top:-57px; border:5px solid white; background:#dbe7f4; color:#1877f2; font-size:2.3rem; }.theme-faxbook .profile-copy { padding-top:4px; }.theme-faxbook .profile-copy h1 { color:#1c1e21; font-size:1.75rem; }.theme-faxbook .profile-handle { color:#65676b; font-size:.78rem; }.theme-faxbook .profile-copy > p:not(.profile-handle) { color:#606770; font-size:.84rem; }.theme-faxbook .profile-copy .profile-about { display:block; max-width:560px; color:#65676b!important; }.theme-faxbook .public-label { margin-left:auto; border:0; border-radius:6px; background:#e4e6eb; color:#343a40; font-size:.7rem; }
.faxbook-layout { display:grid; grid-template-columns:minmax(190px,235px) minmax(0,680px) minmax(210px,260px); align-items:start; justify-content:center; gap:18px; margin:20px auto 0; max-width:1260px; }.faxbook-center-column { min-width:0; }.faxbook-sidebar { position:sticky; top:14px; display:flex; flex-direction:column; gap:7px; padding:5px 0; }.faxbook-sidebar-profile,.faxbook-sidebar-link { display:flex; align-items:center; gap:10px; min-width:0; padding:8px; border-radius:7px; color:#1c1e21; text-decoration:none; font-size:.75rem; }.faxbook-sidebar-profile:hover,.faxbook-sidebar-link:hover { background:#e4e6eb; }.faxbook-sidebar-profile > span:last-child { display:flex; min-width:0; flex-direction:column; gap:3px; }.faxbook-sidebar-profile strong { overflow:hidden; font-size:.75rem; text-overflow:ellipsis; }.faxbook-sidebar-profile small { color:#65676b; font-size:.63rem; }.faxbook-sidebar-avatar,.faxbook-group-mark { display:grid; place-items:center; width:34px; height:34px; flex:0 0 34px; border-radius:50%; background:#dbe7f4; color:#1877f2; font-weight:800; }.faxbook-group-mark { border-radius:8px; background:#e4e6eb; color:#606770; }.faxbook-sidebar-link > span:first-child:not(.faxbook-group-mark) { display:grid; place-items:center; width:34px; height:34px; color:#1877f2; font-size:1.25rem; }.faxbook-sidebar-divider { height:1px; margin:7px 4px; background:#ced0d4; }.faxbook-sidebar > p { margin:8px 8px 0; color:#65676b; font-size:.75rem; font-weight:700; }
.theme-faxbook .feed-section { min-width:0; padding:0 0 20px; border:0; background:transparent; }.theme-faxbook .feed-heading { align-items:center; margin:0 0 12px; padding:13px 16px; border-radius:8px; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.1); }.theme-faxbook .feed-heading h2 { color:#1c1e21; font-size:1rem; }.theme-faxbook .feed-heading .eyebrow { color:#65676b; }.theme-faxbook .feed-heading > p { display:none; }.theme-faxbook .post-grid { grid-template-columns:1fr; gap:12px; }.theme-faxbook .platform-post { padding:16px; border:0; border-radius:8px; box-shadow:0 1px 2px rgba(0,0,0,.12); }.theme-faxbook .post-meta { margin-bottom:12px; }.theme-faxbook .post-avatar { width:40px; height:40px; background:#e4e6eb; color:#1877f2; font-size:.9rem; }.theme-faxbook .post-meta strong { color:#1c1e21; font-size:.8rem; }.theme-faxbook .post-meta > div span { color:#65676b; font-size:.65rem; }.theme-faxbook .post-category { padding:4px 7px; border-radius:10px; background:#e7f3ff; color:#1877f2; }.theme-faxbook .platform-post h3 { margin:0 0 7px; color:#1c1e21; font:700 .95rem 'DM Sans',sans-serif; }.theme-faxbook .platform-post > p { color:#1c1e21; font-size:.84rem; line-height:1.55; }.theme-faxbook .post-links a { color:#1877f2; }.theme-faxbook .post-actions { justify-content:space-around; gap:8px; margin-top:8px; padding-top:10px; color:#65676b; font-size:.68rem; }.theme-faxbook .platform-disclaimer { background:#e7f3ff; color:#49647d; }.theme-faxbook .back-to-brief { margin:16px 4px; color:#606770; }
.faxbook-sidebar-right { gap:13px; }.faxbook-side-card { padding:14px; border-radius:8px; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.1); }.faxbook-side-card h2 { margin:0 0 12px; color:#65676b; font-size:.76rem; }.faxbook-event-date { display:flex; align-items:center; gap:8px; width:max-content; margin:0 0 9px; padding:6px 9px; border-radius:6px; background:#e7f3ff; color:#1877f2; }.faxbook-event-date strong { font-size:1.35rem; }.faxbook-event-date span { font-size:.55rem; font-weight:800; }.faxbook-side-card h3 { margin:0 0 5px; color:#1c1e21; font-size:.82rem; }.faxbook-side-card > p:not(.faxbook-event-date) { margin:0 0 10px; color:#65676b; font-size:.68rem; line-height:1.5; }.faxbook-side-card > a:not(.faxbook-discovery) { color:#1877f2; font-size:.68rem; font-weight:700; text-decoration:none; }.faxbook-discovery { display:flex; align-items:center; gap:9px; padding:7px 0; color:#1c1e21; text-decoration:none; }.faxbook-discovery + .faxbook-discovery { border-top:1px solid #e4e6eb; }.faxbook-discovery-icon { display:grid; place-items:center; width:34px; height:34px; flex:0 0 34px; border-radius:7px; background:#e7f3ff; color:#1877f2; font-weight:800; }.faxbook-discovery > span:last-child { display:flex; min-width:0; flex-direction:column; gap:3px; }.faxbook-discovery strong { font-size:.69rem; }.faxbook-discovery small { color:#65676b; font-size:.58rem; }.faxbook-sidebar-disclaimer { color:#7a7d81; font-size:.59rem; line-height:1.45; }
.theme-faxbook.network-home { padding-top:0; background:#f0f2f5; }.theme-faxbook .network-home-shell { max-width:1320px; overflow:visible; border:0; border-radius:0; background:transparent; box-shadow:none; }.theme-faxbook .network-home-header { position:sticky; top:0; z-index:5; min-height:64px; border-bottom:1px solid #e4e6eb; }.theme-faxbook .network-home-brand > span { width:39px; height:39px; border-radius:50%; background:#1877f2; color:white; font-size:1.15rem; }.theme-faxbook .network-home-nav { justify-content:center; min-height:54px; border-radius:0 0 8px 8px; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.08); }.theme-faxbook .network-home-nav a,.theme-faxbook .network-home-nav span { padding-right:20px; padding-left:20px; }.theme-faxbook .network-home-nav .is-current { border-bottom-color:#1877f2; color:#1877f2; }.theme-faxbook .network-home-hero { min-height:210px; margin-top:16px; border-radius:8px; background:linear-gradient(120deg,#fff 0 72%,#e7f3ff 72%); box-shadow:0 1px 2px rgba(0,0,0,.1); }.theme-faxbook .network-home-hero h1 { font-size:2.5rem; }.theme-faxbook .network-home-cta { border-radius:6px; background:#1877f2; }.theme-faxbook .network-home-posts { grid-template-columns:minmax(0,680px); justify-content:center; }.theme-faxbook .network-home-post { border:0; border-radius:8px; box-shadow:0 1px 2px rgba(0,0,0,.12); }.theme-faxbook .network-home-post h3 { font-family:'DM Sans',sans-serif; }.theme-faxbook .network-home-service-card.selected { border-color:#1877f2; background:#e7f3ff; }
.theme-faxbook.profile-directory-page,.theme-faxbook.profile-person-page { background:#f0f2f5; }.theme-faxbook .profile-directory-hero { border:0; border-radius:0 0 8px 8px; background:linear-gradient(120deg,#fff 0 68%,#dce8f5 68%); box-shadow:0 1px 2px rgba(0,0,0,.12); }.theme-faxbook .profile-directory-results { border:0; border-radius:8px; background:transparent; }.theme-faxbook .profile-directory-card { border:0; border-radius:8px; box-shadow:0 1px 2px rgba(0,0,0,.12); }.theme-faxbook .profile-directory-card:hover { box-shadow:0 4px 12px rgba(0,0,0,.12); }.theme-faxbook .profile-directory-activity { background:#f0f2f5; }.theme-faxbook .profile-directory-note { background:#e7f3ff; }.theme-faxbook .profile-person-card { border:0; border-radius:8px; }.theme-faxbook .profile-person-cover { height:235px; }.theme-faxbook .profile-person-avatar { background:#1877f2; }.theme-faxbook .profile-person-activity { background:#f0f2f5; }
@media(max-width:1050px) { .faxbook-layout { grid-template-columns:190px minmax(0,680px); max-width:920px; }.faxbook-sidebar-right { display:none; } }
@media(max-width:720px) { .theme-faxbook .platform-shell { padding:0 9px; }.theme-faxbook .platform-tabs { justify-content:flex-start; gap:5px; overflow-x:auto; }.theme-faxbook .platform-tabs > span:not(.platform-tabs-note),.theme-faxbook .platform-tabs > a { padding:0 12px; white-space:nowrap; }.theme-faxbook .profile-panel { border-radius:0 0 8px 8px; }.theme-faxbook .profile-cover { height:150px; }.theme-faxbook .profile-details { min-height:0; flex-wrap:wrap; padding:0 15px 16px; }.theme-faxbook .profile-avatar { width:92px; height:92px; flex-basis:92px; margin-top:-42px; font-size:1.7rem; }.theme-faxbook .profile-copy { padding-top:3px; }.theme-faxbook .profile-copy h1 { font-size:1.35rem; }.theme-faxbook .profile-copy .profile-about { display:none; }.faxbook-layout { display:block; margin-top:12px; }.faxbook-sidebar-left { position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:3px; margin-bottom:12px; padding:6px; border-radius:8px; background:#fff; }.faxbook-sidebar-left > p,.faxbook-sidebar-divider { display:none; }.faxbook-sidebar-profile,.faxbook-sidebar-link { min-width:0; padding:6px; font-size:.64rem; }.faxbook-sidebar-link { overflow:hidden; }.faxbook-sidebar-link > span:first-child:not(.faxbook-group-mark) { width:28px; height:28px; flex-basis:28px; }.faxbook-group-mark,.faxbook-sidebar-avatar { width:28px; height:28px; flex-basis:28px; }.faxbook-center-column { width:100%; }.theme-faxbook .feed-section { padding:0; }.theme-faxbook .feed-heading { padding:12px; }.theme-faxbook .platform-post { padding:13px; }.theme-faxbook .profile-directory-hero { padding:20px 16px; background:#fff; }.theme-faxbook .profile-person-cover { height:145px; } }

/* Persistent research objectives across every page in the workshop lab */
.workshop-with-clues { display:grid; grid-template-columns:minmax(0,1fr) 278px; align-items:start; gap:20px; width:min(calc(100% - 32px),1600px); margin:0 auto; }
.workshop-main-content { min-width:0; }
.activity-clue-sidebar { position:sticky; top:88px; z-index:10; align-self:start; max-height:calc(100dvh - 104px); overflow:auto; border:1px solid #d8e0e8; border-radius:10px; background:#fff; box-shadow:0 6px 25px rgba(24,43,59,.1); color:#243746; }
.activity-clue-sidebar > summary { position:sticky; top:0; z-index:1; display:flex; align-items:center; gap:10px; padding:14px; border-bottom:1px solid #edf0f2; background:#fff; list-style:none; cursor:pointer; }.activity-clue-sidebar > summary::-webkit-details-marker { display:none; }.activity-clue-sidebar > summary > span:nth-child(2) { display:flex; flex:1; flex-direction:column; gap:3px; }.activity-clue-sidebar > summary strong { color:#243746; font:700 .88rem 'Manrope',sans-serif; }.activity-clue-sidebar > summary small { color:#7d8993; font-size:.62rem; }.clue-sidebar-mark { display:grid; place-items:center; width:31px; height:31px; border-radius:50%; background:#e9f1f6; color:#397395; font-weight:800; }.clue-sidebar-chevron { color:#7b8791; transition:transform .18s ease; }.activity-clue-sidebar[open] .clue-sidebar-chevron { transform:rotate(180deg); }
.clue-sidebar-content { padding:13px; }.clue-sidebar-intro { margin:0 0 12px; color:#687783; font-size:.67rem; line-height:1.5; }.clue-check { display:flex; align-items:flex-start; gap:9px; padding:10px 8px; border-bottom:1px solid #eef1f3; cursor:pointer; }.clue-check input { width:16px; height:16px; flex:0 0 16px; margin:2px 0 0; accent-color:#397395; }.clue-check > span { display:flex; flex-direction:column; gap:4px; }.clue-check strong { color:#304653; font-size:.68rem; }.clue-check small { color:#74828c; font-size:.61rem; line-height:1.45; }.clue-check.is-done strong { color:#66817a; text-decoration:line-through; }.clue-check.is-done { opacity:.78; }.clue-source-tip { margin-top:12px; padding:10px; border-radius:6px; background:#f2f6f8; }.clue-source-tip strong { color:#397395; font-size:.62rem; }.clue-source-tip p { margin:4px 0 0; color:#62717c; font-size:.61rem; line-height:1.5; }.clue-reset { margin-top:12px; padding:0; border:0; background:transparent; color:#667d8a; font-size:.61rem; text-decoration:underline; cursor:pointer; }.clue-local-note { margin:8px 0 0; color:#929da5; font-size:.55rem; line-height:1.4; }
@media(max-width:1100px) { .workshop-with-clues { display:block; width:100%; margin:0; }.activity-clue-sidebar { position:fixed; top:auto; right:10px; bottom:10px; left:10px; width:auto; max-height:min(72dvh,620px); overflow:auto; border-color:#cfd8e2; box-shadow:0 8px 36px rgba(22,34,45,.23); }.activity-clue-sidebar:not([open]) { right:16px; bottom:16px; left:auto; width:56px; max-height:none; overflow:hidden; border-radius:50%; }.activity-clue-sidebar:not([open]) > summary { display:grid; width:54px; height:54px; place-items:center; padding:0; border:0; border-radius:50%; }.activity-clue-sidebar:not([open]) > summary > span:nth-child(2),.activity-clue-sidebar:not([open]) .clue-sidebar-chevron { display:none; }.activity-clue-sidebar:not([open]) .clue-sidebar-mark { width:42px; height:42px; font-size:1.25rem; }.activity-clue-sidebar > summary { padding:11px 14px; }.clue-sidebar-content { padding:10px 14px 14px; }.clue-check { padding:8px; } }
@media(max-width:520px) { .activity-clue-sidebar { right:8px; bottom:8px; max-height:74dvh; }.activity-clue-sidebar:not([open]) { right:14px; bottom:14px; }.activity-clue-sidebar > summary strong { font-size:.82rem; }.clue-sidebar-intro { font-size:.63rem; } }
@media(prefers-reduced-motion:reduce) { .clue-sidebar-chevron { transition:none; } }

/* Picsum illustrations used across every simulated network */
.network-home-hero-mark { position:relative; overflow:hidden; background:#e8eef0; }
.network-home-hero-mark img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.network-home-hero-mark > span { position:relative; z-index:1; display:grid; place-items:center; width:62px; height:62px; border:2px solid rgba(255,255,255,.85); border-radius:50%; background:rgba(255,255,255,.82); box-shadow:0 3px 16px rgba(0,0,0,.12); }
.profile-cover { position:relative; overflow:hidden; }
.profile-cover img,.profile-person-cover img,.likedon-person-cover img { display:block; width:100%; height:100%; object-fit:cover; }
.profile-avatar,.profile-person-avatar,.likedon-profile-avatar-image { display:block; object-fit:cover; }
.platform-post-image { display:block; width:100%; aspect-ratio:16/9; margin:0 0 14px; border-radius:4px; object-fit:cover; background:#edf0f1; }
.profile-directory-avatar,.likedon-person-avatar-image { display:block; object-fit:cover; }
.profile-directory-avatar { flex:0 0 42px; }
.profile-person-cover,.likedon-person-cover { overflow:hidden; }
.profile-person-avatar,.likedon-profile-avatar-image { flex:0 0 auto; }
.instogram-person-gallery figure { min-width:0; margin:0; overflow:hidden; border:1px solid #eee5e7; background:#fff; }
.instogram-person-gallery figcaption { min-height:82px; padding:9px 10px; color:#62565d; font-size:.67rem; line-height:1.5; }
.instogram-person-gallery figcaption small { display:block; margin-bottom:4px; color:#a04869; font-size:.58rem; font-weight:800; }
.family-profile-links { margin:0 27px 20px; padding:15px; border:1px solid #e5e9ec; border-radius:8px; background:#fafcfd; }
.family-profile-links h2 { margin:0 0 4px; color:#314753; font:700 .83rem 'Manrope',sans-serif; }
.family-profile-links > p { margin:0 0 10px; color:#71808a; font-size:.67rem; }
.family-profile-links > div { display:flex; flex-wrap:wrap; gap:8px; }
.family-profile-links a { display:inline-flex; gap:8px; align-items:center; padding:8px 10px; border:1px solid #dce5e9; border-radius:6px; background:#fff; color:#326e89; font-size:.68rem; font-weight:700; text-decoration:none; }
.family-profile-links a:hover { border-color:#8ab3c4; background:#f1f8fa; }
.family-profile-timeline { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0 27px 20px; }
.family-profile-timeline > .eyebrow { grid-column:1/-1; margin:0; color:var(--service-accent); font-size:.6rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.family-profile-timeline article { overflow:hidden; border:1px solid #e5e9ec; border-radius:7px; background:#fff; }
.family-profile-timeline article img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; }
.family-profile-timeline article div { padding:12px; }
.family-profile-timeline article small { color:#89949b; font-size:.6rem; }
.family-profile-timeline article h2 { margin:3px 0 6px; color:#304552; font:700 .88rem 'Manrope',sans-serif; }
.family-profile-timeline article p { margin:0; color:#63717c; font-size:.7rem; line-height:1.55; }
@media(max-width:600px) { .family-profile-links { margin-right:16px; margin-left:16px; }.family-profile-timeline { grid-template-columns:1fr; margin-right:16px; margin-left:16px; }.instogram-person-gallery figcaption { min-height:96px; padding:8px; font-size:.61rem; } }


/* Likedon profile and its local one-hundred-account fictional network */
.platform-tabs a { display:grid; align-items:center; height:45px; border-bottom:2px solid transparent; color:#718091; font-size:.72rem; text-decoration:none; }
.platform-tabs a:hover { color:var(--service-accent); }
.likedon-profile-stats { display:flex; align-items:center; flex-wrap:wrap; gap:12px 20px; margin-top:13px; }
.likedon-profile-stats > span { color:#68798a; font-size:.7rem; }.likedon-profile-stats strong { color:#3479a8; font-size:.85rem; }
.likedon-profile-stats > a { color:#3479a8; font-size:.72rem; font-weight:700; text-decoration:none; }.likedon-profile-stats > a:hover { text-decoration:underline; }
.likedon-network-page,.likedon-person-page { min-height:80vh; padding:32px 0 75px; background:#edf2f6; }
.likedon-network-shell,.likedon-person-shell { max-width:1120px; }
.likedon-back { display:inline-block; margin:0 0 15px; color:#4e7290; font-size:.78rem; font-weight:700; text-decoration:none; }
.likedon-back:hover { text-decoration:underline; }
.likedon-network-hero { position:relative; overflow:hidden; padding:32px 36px 29px; border:1px solid #dae3e9; border-radius:8px; background:linear-gradient(125deg,#fff 0 58%,#e4edf3 58% 100%); }
.likedon-network-brand { display:flex; align-items:center; gap:8px; margin-bottom:23px; color:#28475e; }.likedon-network-brand > span { display:grid; place-items:center; width:31px; height:31px; border-radius:5px; background:#3479a8; color:white; font-weight:800; }.likedon-network-brand strong { font:800 1rem 'Manrope',sans-serif; }.likedon-network-brand small { margin-left:auto; color:#547994; font-size:.59rem; font-weight:800; letter-spacing:.1em; }
.likedon-network-hero .eyebrow { margin-bottom:9px; }.likedon-network-hero h1 { margin:0; color:#203a4f; text-align:left; font:800 clamp(2.2rem,5vw,3.7rem)/1.06 'Manrope',sans-serif; letter-spacing:-.05em; }.likedon-network-hero h1 span { color:#3479a8; }
.likedon-network-lead { max-width:620px; margin:15px 0 20px; color:#637688; font-size:.9rem; line-height:1.7; }
.likedon-network-counts { display:flex; flex-wrap:wrap; gap:8px; }.likedon-network-counts span { padding:7px 10px; border:1px solid #dce6ec; border-radius:4px; background:rgba(255,255,255,.75); color:#66798a; font-size:.69rem; }.likedon-network-counts strong { color:#315e7d; }
.likedon-network-results { margin-top:24px; padding:25px; border:1px solid #dce4e9; border-radius:8px; background:#f9fbfc; }
.likedon-network-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:18px; }.likedon-network-heading .eyebrow { margin-bottom:5px; font-size:.62rem; }.likedon-network-heading h2 { margin:0; color:#203a4f; text-align:left; font:700 1.35rem 'Manrope',sans-serif; }
.likedon-network-search { display:flex; align-items:center; gap:9px; margin-bottom:18px; }.likedon-network-search input { min-width:0; flex:1; min-height:44px; padding:9px 12px; border:1px solid #dbe3e8; border-radius:5px; background:white; color:#31495d; font-size:.8rem; }.likedon-network-search .button { min-height:44px; padding:11px 16px; }.likedon-network-search > a { color:#587994; font-size:.75rem; }
.likedon-people-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.likedon-person-card { min-width:0; border:1px solid #e0e7eb; border-radius:6px; background:white; transition:transform .16s ease,box-shadow .16s ease; }.likedon-person-card:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(35,65,86,.09); }
.likedon-target-card { border-color:#75a9c9; background:linear-gradient(145deg,#fff,#f1f8fc); box-shadow:inset 0 0 0 1px rgba(52,121,168,.08); }.likedon-target-card .likedon-person-avatar { background:#3479a8; color:#fff; }.likedon-target-card .likedon-level { background:#e1f0f8; color:#28658d; font-weight:700; }
.likedon-person-card > a { display:block; height:100%; padding:16px; color:inherit; text-decoration:none; }.likedon-person-top { display:flex; align-items:center; justify-content:space-between; gap:9px; margin-bottom:13px; }.likedon-person-avatar { display:grid; place-items:center; width:43px; height:43px; border-radius:50%; background:#dfebf2; color:#386886; font:700 .95rem 'Manrope',sans-serif; }.likedon-level { padding:4px 7px; border-radius:3px; background:#eef3f6; color:#6c7f8e; font-size:.59rem; }
.likedon-person-card h3 { margin:0 0 4px; color:#263e51; font:700 .94rem 'Manrope',sans-serif; }.likedon-person-headline { min-height:35px; margin:0; color:#5c6e7d; font-size:.69rem; line-height:1.45; }.likedon-person-location { margin:7px 0 12px; color:#87939e; font-size:.65rem; }
.likedon-person-activity { min-height:61px; margin:0; padding:10px; border-radius:4px; background:#f4f7f9; color:#63717d; font-size:.66rem; line-height:1.5; }.likedon-person-activity span { display:block; margin-bottom:3px; color:#7a8d9c; font-size:.57rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.likedon-person-open { display:inline-block; margin-top:12px; color:#3479a8; font-size:.68rem; font-weight:700; }.likedon-empty { grid-column:1/-1; padding:40px; text-align:center; color:#617486; }.likedon-database-note { margin:18px 0 0; color:#84919b; font-size:.67rem; line-height:1.6; }
.likedon-person-shell { max-width:820px; }.likedon-profile-card { overflow:hidden; border:1px solid #dce4e9; border-radius:8px; background:white; box-shadow:0 14px 45px rgba(29,57,76,.08); }.likedon-person-cover { height:175px; background:linear-gradient(120deg,#c7dbe8,#dce8eb 54%,#d4e2e5); }.likedon-profile-content { position:relative; padding:0 34px 34px; }.likedon-profile-avatar { display:grid; place-items:center; width:88px; height:88px; margin-top:-44px; border:5px solid white; border-radius:50%; background:#3479a8; color:#fff; font:800 1.7rem 'Manrope',sans-serif; }.likedon-profile-fake { display:inline-block; margin-top:20px; color:#638398; font-size:.62rem; font-weight:800; letter-spacing:.08em; }.likedon-profile-content h1 { margin:5px 0 4px; color:#223b4e; text-align:left; font:800 2rem 'Manrope',sans-serif; letter-spacing:-.04em; }.likedon-profile-headline { margin:0; color:#526a7b; font-size:.95rem; }.likedon-profile-city { margin:8px 0 23px; color:#81909b; font-size:.73rem; }
.likedon-profile-about { padding:16px 0 19px; border-top:1px solid #e8edf0; }.likedon-profile-about h2 { margin:0 0 6px; color:#31526b; text-align:left; font:700 .86rem 'Manrope',sans-serif; }.likedon-profile-about p { margin:0; color:#647482; font-size:.82rem; line-height:1.65; }
.likedon-profile-activity { padding:18px; border:1px solid #e1e8ed; border-radius:6px; background:#f8fafb; }.likedon-profile-activity .eyebrow { margin-bottom:8px; font-size:.6rem; }.likedon-profile-activity > p:not(.eyebrow) { margin:0 0 10px; color:#425a6c; font-size:.9rem; line-height:1.6; }.likedon-profile-activity small { color:#87939c; font-size:.65rem; }
.likedon-profile-safety { display:flex; gap:13px; align-items:start; margin-top:16px; padding:14px; border-left:3px solid #75a0bd; background:#eef4f7; }.likedon-profile-safety strong { flex:0 0 auto; color:#3d657f; font-size:.7rem; }.likedon-profile-safety p { margin:0; color:#687c8a; font-size:.7rem; line-height:1.55; }.likedon-return-button { margin-top:19px; }
@media(max-width:900px) { .likedon-people-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.likedon-network-hero { background:linear-gradient(125deg,#fff 0 72%,#e4edf3 72%); } }
@media(max-width:650px) {
  .likedon-network-page,.likedon-person-page { padding:17px 0 50px; }
  .likedon-network-hero { padding:21px 18px; background:#fff; }.likedon-network-hero h1 { font-size:2.3rem; }.likedon-network-lead { font-size:.82rem; }.likedon-network-counts { gap:6px; }.likedon-network-counts span { font-size:.61rem; }
  .likedon-network-results { margin-top:13px; padding:15px 11px; }.likedon-network-heading h2 { font-size:1.12rem; }.likedon-network-search { flex-wrap:wrap; }.likedon-network-search input { flex-basis:100%; }.likedon-network-search .button { flex:1; }
  .likedon-people-grid { grid-template-columns:1fr; gap:9px; }.likedon-person-card > a { padding:13px; }.likedon-person-headline,.likedon-person-activity { min-height:0; }
  .likedon-profile-content { padding:0 19px 24px; }.likedon-person-cover { height:125px; }.likedon-profile-content h1 { font-size:1.6rem; }.likedon-profile-safety { flex-direction:column; gap:5px; }
}
@media(prefers-reduced-motion:reduce) { .likedon-person-card { transition:none; } }

.likedon-location { margin-top:5px!important; color:#7b8995!important; font-size:.69rem!important; }
.likedon-resume { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin:0 18px 20px; padding:23px 25px; border:1px solid #e0e6ea; border-radius:0 0 7px 7px; background:#fff; }
.likedon-resume-column > h2 { margin:0 0 15px; color:#2c465b; text-align:left; font:700 1.05rem 'Manrope',sans-serif; }
.likedon-experience { display:flex; align-items:start; gap:11px; margin-bottom:14px; }.likedon-experience:last-child { margin-bottom:0; }
.likedon-experience-mark { display:grid; place-items:center; width:36px; height:36px; flex:0 0 36px; border-radius:5px; background:#e0ebf1; color:#386986; font-weight:800; }
.likedon-experience h3 { margin:0 0 3px; color:#30495c; font:700 .78rem 'Manrope',sans-serif; }.likedon-experience strong,.likedon-experience small { display:block; color:#657687; font-size:.68rem; }.likedon-experience small { margin-top:2px; color:#89949c; }.likedon-experience p { margin:7px 0 0; color:#6b7985; font-size:.69rem; line-height:1.5; }
.likedon-resume-column .likedon-skills-title { margin-top:21px; }.likedon-skills { display:flex; flex-wrap:wrap; gap:7px; }.likedon-skills span { padding:6px 8px; border-radius:3px; background:#edf3f6; color:#4c6e84; font-size:.64rem; }
@media(max-width:650px) { .likedon-resume { grid-template-columns:1fr; gap:22px; margin:0 10px 14px; padding:19px 16px; }.likedon-resume-column .likedon-skills-title { margin-top:16px; } }


/* Likedon profile layout polish */
.theme-likedon .platform-shell { max-width:1160px; }
.theme-likedon .profile-panel { overflow:hidden; border:1px solid #dce4e9; border-radius:7px; box-shadow:0 3px 12px rgba(28,57,76,.035); }
.theme-likedon .profile-cover { height:148px; background:linear-gradient(112deg,#c4d9e6 0%,#e5edf0 48%,#d4e1e5 100%); }
.theme-likedon .profile-details { gap:19px; padding:0 30px 27px; }
.theme-likedon .profile-avatar { width:82px; height:82px; flex-basis:82px; margin-top:-39px; font-size:1.65rem; }
.theme-likedon .profile-copy { padding-top:10px; }
.theme-likedon .profile-copy h1 { margin:3px 0 5px; color:#18374e; font-size:1.45rem; }
.theme-likedon .profile-copy > p:not(.profile-handle) { font-size:.84rem; }
.theme-likedon .profile-copy .profile-about { max-width:690px; margin-top:10px!important; color:#536777!important; line-height:1.6; }
.theme-likedon .profile-handle { color:#587b94; font-size:.74rem; }
.theme-likedon .public-label { margin-top:17px; padding:7px 10px; border-color:#d9e2e8; color:#53718a; }
.theme-likedon .platform-tabs { border-color:#dce4e9; border-radius:6px; margin:0 0 14px; box-shadow:0 2px 8px rgba(28,57,76,.025); }
.theme-likedon .likedon-resume { grid-template-columns:1fr 1fr; gap:38px; margin:14px 0 20px; padding:28px 30px; border:1px solid #dce4e9; border-radius:7px; box-shadow:0 3px 12px rgba(28,57,76,.03); }
.theme-likedon .likedon-resume-column > h2 { margin-bottom:18px; color:#203f56; font-size:1.12rem; }
.theme-likedon .likedon-experience { gap:13px; margin-bottom:19px; }
.theme-likedon .likedon-experience-mark { width:41px; height:41px; flex-basis:41px; }
.theme-likedon .likedon-experience h3 { font-size:.85rem; }
.theme-likedon .likedon-experience strong,.theme-likedon .likedon-experience small { font-size:.74rem; }
.theme-likedon .likedon-experience p { color:#586d7c; font-size:.76rem; line-height:1.6; }
.theme-likedon .likedon-profile-stats { margin-top:15px; }
.theme-likedon .likedon-profile-stats > span,.theme-likedon .likedon-profile-stats > a { font-size:.77rem; }
.theme-likedon .feed-section { border:1px solid #dce4e9; border-radius:7px; padding:29px 27px; box-shadow:0 3px 12px rgba(28,57,76,.025); }
.theme-likedon .feed-heading { margin-bottom:23px; }
.theme-likedon .feed-heading h2 { font-size:1.48rem; }
@media(max-width:650px) {
  .theme-likedon .platform-shell { padding:0 10px; }
  .theme-likedon .profile-cover { height:105px; }
  .theme-likedon .profile-details { gap:12px; padding:0 15px 20px; }
  .theme-likedon .profile-avatar { width:64px; height:64px; flex-basis:64px; margin-top:-30px; font-size:1.35rem; }
  .theme-likedon .profile-copy { padding-top:7px; }
  .theme-likedon .profile-copy h1 { font-size:1.23rem; }
  .theme-likedon .profile-copy > p:not(.profile-handle) { font-size:.75rem; }
  .theme-likedon .public-label { display:none; }
  .theme-likedon .likedon-resume { grid-template-columns:1fr; gap:21px; margin:11px 0 14px; padding:20px 17px; }
  .theme-likedon .feed-section { padding:21px 13px; }
}

/* Refreshed investigation notebook */
.workshop-with-clues { grid-template-columns:minmax(0,1fr) 310px; gap:18px; }
.activity-clue-sidebar { border-color:#d7e1e8; border-radius:14px; }
.activity-clue-sidebar > summary { padding:15px; }
.activity-clue-sidebar > summary small { display:block; }
.clue-sidebar-mark { border-radius:9px; background:#eaf3f7; color:#267293; }
.clue-sidebar-content { padding:12px 14px 14px; }
.clue-sidebar-intro { font-size:.7rem; }
.clue-group { margin:12px 0 0; }
.clue-group h3 { margin:0; padding:8px 8px 5px; color:#4b7487; font-size:.61rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.clue-check { gap:8px; padding:8px; }
.clue-check strong { font-size:.67rem; line-height:1.4; }
.clue-check small { font-size:.6rem; }
.clue-notes-label { display:block; margin:14px 0 6px; color:#304653; font-size:.66rem; font-weight:800; }
.clue-notes { display:block; box-sizing:border-box; width:100%; min-height:82px; resize:vertical; padding:9px 10px; border:1px solid #dce5e9; border-radius:7px; background:#fbfcfd; color:#304653; font: .65rem/1.5 'DM Sans',sans-serif; }
.clue-notes:focus { border-color:#5792aa; outline:3px solid #dceef4; }
.clue-source-tip { margin-top:10px; }
.clue-reset { padding:7px 0; }
@media(max-width:1100px) { .workshop-with-clues { display:block; width:100%; margin:0; }.activity-clue-sidebar { width:auto; max-height:min(78dvh,720px); }.activity-clue-sidebar[open] { border-radius:14px; }.clue-sidebar-content { padding:10px 14px 14px; } }

/* Use the full page width and keep the investigation notebook in a floating bubble. */
.workshop-with-clues { display:block; width:100%; max-width:none; margin:0; }
.workshop-main-content { width:100%; }
.activity-clue-sidebar,.activity-clue-sidebar[open] { position:fixed; z-index:1200; top:auto; right:20px; bottom:20px; left:auto; width:min(390px,calc(100vw - 24px)); max-height:min(78dvh,760px); overflow:hidden; border:1px solid #d2dce3; border-radius:14px; background:#fff; box-shadow:0 15px 48px rgba(24,43,59,.24); }
.activity-clue-sidebar:not([open]) { width:60px; height:60px; max-height:none; border-radius:50%; }
.activity-clue-sidebar > summary { position:sticky; top:0; display:flex; min-height:60px; align-items:center; gap:11px; padding:11px 14px; border:0; border-bottom:1px solid #edf0f2; background:#fff; list-style:none; cursor:pointer; }
.activity-clue-sidebar:not([open]) > summary { display:grid; width:60px; height:60px; min-height:60px; place-items:center; padding:0; border:0; border-radius:50%; }
.activity-clue-sidebar:not([open]) > summary > span:nth-child(2),.activity-clue-sidebar:not([open]) .clue-sidebar-chevron { display:none; }
.activity-clue-sidebar:not([open]) .clue-sidebar-mark { width:44px; height:44px; font-size:1.2rem; }
.activity-clue-sidebar[open] .clue-sidebar-chevron { transform:rotate(180deg); }
.activity-clue-sidebar[open] .clue-sidebar-content { max-height:calc(min(78dvh,760px) - 61px); overflow:auto; overscroll-behavior:contain; }
@media(max-width:520px) { .activity-clue-sidebar,.activity-clue-sidebar[open] { right:12px; bottom:12px; width:min(390px,calc(100vw - 24px)); max-height:78dvh; }.activity-clue-sidebar:not([open]) { right:14px; bottom:14px; width:58px; height:58px; }.activity-clue-sidebar:not([open]) > summary { width:58px; height:58px; min-height:58px; }.activity-clue-sidebar[open] .clue-sidebar-content { max-height:calc(78dvh - 61px); } }
.linkedin-directory-page { min-height:80vh; padding-bottom:70px; background:#f3f2ef; color:#191919; }
.linkedin-directory-header { height:64px; border-bottom:1px solid #e2e0dc; background:#fff; }
.linkedin-directory-header-inner { display:flex; align-items:center; gap:18px; max-width:1128px; height:100%; margin:auto; padding:0 20px; }
.linkedin-directory-logo { display:grid; flex:0 0 34px; place-items:center; width:34px; height:34px; border-radius:3px; background:#0a66c2; color:#fff; font:800 23px/1 Arial,sans-serif; text-decoration:none; letter-spacing:-2px; }
.linkedin-directory-top-search { display:flex; align-items:center; width:min(390px,55vw); height:38px; padding:0 10px; border-radius:5px; background:#edf3f8; color:#59636e; }
.linkedin-directory-top-search span { font-size:22px; }
.linkedin-directory-top-search input { flex:1; min-width:0; border:0; outline:0; background:transparent; color:#191919; font-size:14px; }
.linkedin-directory-top-search button { border:0; background:transparent; color:#0a66c2; font-size:12px; font-weight:700; cursor:pointer; }
.linkedin-directory-simulation { margin-left:auto; color:#66727e; font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.linkedin-directory-shell { max-width:1128px; margin:auto; padding:18px 20px 0; }
.linkedin-directory-back { display:inline-block; margin:0 0 16px; color:#0a66c2; font-size:13px; font-weight:600; text-decoration:none; }
.linkedin-directory-intro { display:flex; align-items:center; justify-content:space-between; min-height:202px; overflow:hidden; padding:30px 42px; border:1px solid #e1dfdb; border-radius:8px; background:#fff; }
.linkedin-directory-kicker { margin:0 0 8px; color:#666; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.linkedin-directory-intro h1 { margin:0; color:#191919; font:500 clamp(27px,4vw,38px)/1.16 Arial,sans-serif; letter-spacing:-.035em; }
.linkedin-directory-intro p:last-child { max-width:590px; margin:12px 0 0; color:#666; font-size:14px; line-height:1.55; }
.linkedin-directory-intro-mark { display:grid; flex:0 0 100px; place-items:center; width:100px; height:100px; border-radius:50%; background:#e8f3fb; color:#0a66c2; font:800 58px/1 Arial,sans-serif; letter-spacing:-7px; padding-right:7px; }
.linkedin-directory-layout { display:grid; grid-template-columns:260px minmax(0,1fr); align-items:start; gap:20px; margin-top:20px; }
.linkedin-directory-sidebar,.linkedin-directory-results { border:1px solid #e1dfdb; border-radius:8px; background:#fff; }
.linkedin-directory-sidebar { padding:21px 20px; }
.linkedin-directory-sidebar h2 { margin:0 0 14px; color:#191919; font-size:16px; }
.linkedin-directory-sidebar p { margin:0 0 12px; color:#666; font-size:13px; line-height:1.55; }
.linkedin-directory-sidebar p strong { color:#191919; }
.linkedin-directory-levels { display:grid; gap:10px; padding:15px 0; border-top:1px solid #eee; border-bottom:1px solid #eee; }
.linkedin-directory-levels span { display:flex; align-items:center; gap:9px; color:#555; font-size:12px; }
.linkedin-directory-levels i { width:9px; height:9px; border-radius:50%; background:#0a66c2; }.linkedin-directory-levels .level-two { background:#70a6d1; }.linkedin-directory-levels .level-three { background:#c3d4e1; }
.linkedin-directory-notice { margin-top:16px; padding:12px; border-radius:5px; background:#f3f8fb; }.linkedin-directory-notice strong { color:#315b79; font-size:12px; }.linkedin-directory-notice p { margin:4px 0 0; font-size:11px; }
.linkedin-directory-results { padding:22px; }
.linkedin-directory-results-head { display:flex; align-items:end; justify-content:space-between; gap:12px; margin-bottom:16px; }
.linkedin-directory-results-head h2 { margin:0; color:#191919; font-size:20px; font-weight:600; }
.linkedin-directory-results-head > span { color:#777; font-size:12px; white-space:nowrap; }
.linkedin-directory-search { display:flex; gap:9px; margin-bottom:15px; }
.linkedin-directory-search input { flex:1; min-width:0; height:42px; padding:0 12px; border:1px solid #888; border-radius:4px; color:#191919; font-size:14px; }
.linkedin-directory-search button { padding:0 18px; border:0; border-radius:22px; background:#0a66c2; color:#fff; font-weight:700; cursor:pointer; }
.linkedin-directory-search button:hover { background:#004182; }.linkedin-directory-search a { align-self:center; color:#0a66c2; font-size:12px; }
.linkedin-directory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.linkedin-directory-card { display:flex; min-width:0; gap:13px; padding:15px 12px; border:1px solid #e5e5e5; border-radius:5px; background:#fff; }
.linkedin-directory-card > img { flex:0 0 60px; width:60px; height:60px; border-radius:50%; object-fit:cover; }
.linkedin-directory-card > div { min-width:0; }
.linkedin-directory-degree { display:inline-block; margin-bottom:5px; color:#6a6a6a; font-size:10px; }
.linkedin-directory-card h3 { overflow:hidden; margin:0 0 4px; color:#191919; font-size:15px; text-overflow:ellipsis; white-space:nowrap; }
.linkedin-directory-card p { margin:0 0 5px; color:#555; font-size:12px; line-height:1.4; }
.linkedin-directory-card small { display:block; color:#777; font-size:11px; }
.linkedin-directory-card a { display:inline-block; margin-top:10px; padding:5px 12px; border:1px solid #0a66c2; border-radius:18px; color:#0a66c2; font-size:12px; font-weight:700; text-decoration:none; }
.linkedin-directory-card a:hover { border-width:2px; padding:4px 11px; background:#eef6fc; }
.linkedin-directory-target { border-color:#9bc4e3; background:#f5faff; }
.linkedin-directory-footer { margin-top:18px; color:#777; font-size:11px; text-align:center; }
.linkedin-directory-empty { grid-column:1/-1; padding:30px; color:#666; text-align:center; }
@media(max-width:760px) { .linkedin-directory-layout { grid-template-columns:1fr; }.linkedin-directory-sidebar { order:2; }.linkedin-directory-grid { grid-template-columns:1fr; }.linkedin-directory-intro { min-height:0; padding:24px; }.linkedin-directory-intro-mark { flex-basis:68px; width:68px; height:68px; font-size:41px; }.linkedin-directory-sidebar { padding:16px; }.linkedin-directory-levels { grid-template-columns:1fr 1fr; } }
@media(max-width:480px) { .linkedin-directory-header-inner { padding:0 12px; gap:10px; }.linkedin-directory-top-search { width:100%; }.linkedin-directory-top-search button { font-size:0; }.linkedin-directory-top-search button:after { content:'↵'; font-size:16px; }.linkedin-directory-simulation { display:none; }.linkedin-directory-shell { padding:13px 12px 0; }.linkedin-directory-intro { align-items:flex-start; gap:12px; padding:21px 17px; }.linkedin-directory-intro h1 { font-size:28px; }.linkedin-directory-intro p:last-child { font-size:12px; }.linkedin-directory-intro-mark { flex-basis:50px; width:50px; height:50px; font-size:31px; }.linkedin-directory-results { padding:16px 12px; }.linkedin-directory-results-head h2 { font-size:17px; }.linkedin-directory-search { flex-wrap:wrap; }.linkedin-directory-search input { flex-basis:100%; }.linkedin-directory-search button { min-height:38px; } }
.likedon-recommendations { margin:0 0 18px; padding:24px 28px; border:1px solid #dce4e9; border-radius:7px; background:#fff; box-shadow:0 3px 12px rgba(28,57,76,.03); }
.likedon-recommendations-heading { display:flex; align-items:end; justify-content:space-between; gap:12px; margin-bottom:16px; }
.likedon-recommendations-heading .eyebrow { margin:0 0 5px; color:#667987; font-size:.64rem; }
.likedon-recommendations-heading h2 { margin:0; color:#203f56; font:700 1.12rem 'Manrope',sans-serif; }
.likedon-recommendations-heading > span { color:#70808a; font-size:.68rem; }
.likedon-recommendation-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.likedon-recommendation { display:flex; align-items:flex-start; gap:11px; padding:14px; border:1px solid #e2e8eb; border-radius:6px; background:#fcfdfe; }
.likedon-recommendation-avatar { display:grid; flex:0 0 36px; place-items:center; width:36px; height:36px; border-radius:50%; background:#e3eef4; color:#326381; font-weight:800; }
.likedon-recommendation h3 { margin:0 0 3px; font-size:.78rem; }.likedon-recommendation h3 a { color:#244f6c; text-decoration:none; }.likedon-recommendation h3 a:hover { text-decoration:underline; }
.likedon-recommendation small { color:#6a7780; font-size:.63rem; }.likedon-recommendation p { margin:9px 0 0; color:#465c6a; font-size:.72rem; line-height:1.55; }
.likedon-recommendations-note { margin:13px 0 0; color:#81909a; font-size:.62rem; }
@media(max-width:850px) { .likedon-recommendation-grid { grid-template-columns:1fr; }.likedon-recommendations { padding:20px 18px; } }

/* Local-only browser chrome for the OSINT workshop pages. */
.sim-browser { position:sticky; top:0; z-index:100; padding:9px max(14px,calc((100vw - 1480px)/2)); border-bottom:1px solid #cfd5da; background:#e9edf1; color:#243746; }
.sim-browser-toolbar { display:flex; align-items:center; gap:10px; max-width:1600px; margin:auto; }
.sim-browser-controls { display:flex; flex:0 0 auto; gap:3px; }
.sim-browser-controls button { display:grid; place-items:center; width:31px; height:31px; padding:0; border:0; border-radius:50%; background:transparent; color:#4d5964; font:24px/1 Arial,sans-serif; cursor:pointer; }
.sim-browser-controls button:hover { background:#dbe1e6; }
.sim-browser-address { display:flex; flex:1; align-items:center; min-width:0; height:36px; padding:0 9px; border:1px solid #d0d6db; border-radius:18px; background:#fff; }
.sim-browser-lock { margin-right:8px; color:#66737e; font-size:15px; }
.sim-browser-address input { flex:1; min-width:0; height:100%; border:0; outline:0; background:transparent; color:#263b4a; font:13px/1.4 'DM Sans',sans-serif; }
.sim-browser-address input:focus-visible { outline:0; }
.sim-browser-address button { padding:5px 10px; border:0; border-radius:14px; background:#edf3f6; color:#395b71; font-size:11px; font-weight:700; cursor:pointer; }
.sim-browser-address button:hover { background:#dce9f0; }
.sim-browser-bookmarks { position:relative; flex:0 0 auto; }
.sim-browser-bookmarks > summary { display:flex; align-items:center; gap:5px; height:34px; padding:0 9px; border-radius:5px; color:#4b5d69; font-size:12px; list-style:none; cursor:pointer; }
.sim-browser-bookmarks > summary::-webkit-details-marker { display:none; }
.sim-browser-bookmarks > summary:hover,.sim-browser-bookmarks[open] > summary { background:#dbe2e7; }
.sim-browser-bookmarks > summary [data-bookmark-progress] { padding:2px 5px; border-radius:8px; background:#d9e7ee; color:#385c71; font-size:9px; font-weight:700; }
.sim-browser-bookmarks nav { position:absolute; top:40px; right:0; z-index:150; display:grid; width:230px; padding:6px; border:1px solid #d5dce0; border-radius:8px; background:#fff; box-shadow:0 10px 30px rgba(31,49,63,.18); }
.sim-browser-bookmarks nav a { display:flex; flex-direction:column; gap:2px; padding:9px 10px; border-radius:5px; color:#273f50; font-size:12px; font-weight:600; text-decoration:none; }
.sim-browser-bookmarks nav a[hidden] { display:none; }
.sim-browser-bookmarks nav a:hover { background:#edf4f7; }
.sim-browser-bookmarks nav small { color:#74838d; font-size:10px; font-weight:400; }
.sim-browser-message { max-width:1600px; margin:5px auto 0; color:#64737d; font-size:10px; }
@media(max-width:560px) { .sim-browser { padding:7px 9px; }.sim-browser-toolbar { gap:5px; }.sim-browser-controls { gap:0; }.sim-browser-controls button { width:27px; height:29px; font-size:22px; }.sim-browser-address { height:34px; padding:0 7px; }.sim-browser-address input { font-size:11px; }.sim-browser-address button { width:28px; height:28px; overflow:hidden; padding:0; font-size:0; }.sim-browser-address button:after { content:'Go'; font-size:10px; }.sim-browser-bookmarks > summary { width:46px; justify-content:center; padding:0; font-size:16px; }.sim-browser-bookmarks > summary span { display:none; }.sim-browser-bookmarks nav { right:0; width:min(230px,calc(100vw - 18px)); }.sim-browser-message { font-size:9px; } }
.clue-next-step { display:inline-block; margin-left:10px; color:#176c50; font-weight:700; text-decoration:underline; }
.clue-next-step[hidden] { display:none; }
.osint-debrief { max-width:900px; padding-top:48px; padding-bottom:72px; }
.debrief-kicker { margin-bottom:8px; color:#32815f; font-size:.76rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.osint-debrief h1 { margin-bottom:14px; color:#142b3d; font-size:clamp(2rem,5vw,3.4rem); font-weight:800; }
.debrief-lead { max-width:720px; margin-bottom:30px; color:#536572; font-size:1.08rem; line-height:1.7; }
.debrief-card { margin:18px 0; padding:24px 28px; border:1px solid #dce5e9; border-radius:14px; background:#fff; box-shadow:0 8px 28px rgba(22,43,57,.05); }
.debrief-card h2 { margin-bottom:16px; color:#17354a; font-size:1.25rem; font-weight:750; }
.debrief-card ol { margin:0; padding-left:22px; color:#536572; }
.debrief-card li { padding:7px 0; line-height:1.55; }
.debrief-reminder { border-left:4px solid #34bd68; }
.debrief-reminder p { margin:0; color:#536572; line-height:1.65; }
.debrief-return { display:inline-flex; margin-top:14px; padding:12px 18px; border-radius:8px; background:#173b57; color:#fff; font-weight:700; text-decoration:none; }
.debrief-return:hover { background:#225676; color:#fff; }
@media(max-width:560px) { .osint-debrief { padding-top:30px; padding-bottom:48px; }.debrief-card { padding:18px; } }
.clue-answer-form { display:block; }
.clue-answer { display:flex; flex-direction:column; gap:6px; padding:10px 8px; border-bottom:1px solid #eef1f3; }
.clue-answer > span strong { color:#304653; font-size:.68rem; }
.clue-answer input { width:100%; min-height:36px; padding:7px 9px; border:1px solid #d5dfe5; border-radius:6px; background:#fff; color:#263b49; font:500 .72rem 'DM Sans',sans-serif; }
.clue-answer input:focus { outline:2px solid rgba(57,115,149,.24); border-color:#397395; }
.clue-submit { display:block; width:100%; margin-top:14px; padding:10px 12px; border:0; border-radius:7px; background:#173b57; color:#fff; font-size:.72rem; font-weight:700; cursor:pointer; }
.clue-submit:hover { background:#225676; }
.score-card { display:flex; align-items:center; gap:22px; margin:28px 0 16px; padding:24px 28px; border:1px solid #dce5e9; border-radius:14px; background:#fff; box-shadow:0 8px 28px rgba(22,43,57,.05); }
.score-card > strong { flex:0 0 auto; color:#287452; font:800 3rem/1 'Manrope',sans-serif; }
.score-card > strong span { color:#87949d; font-size:1.25rem; }
.score-card p,.result-detail { margin:0; color:#536572; line-height:1.65; }
.result-detail { margin:18px 0 24px; }
@media(max-width:560px) { .score-card { align-items:flex-start; gap:14px; padding:19px; }.score-card > strong { font-size:2.5rem; } }
.cyber-mini { max-width:1120px; padding-top:42px; padding-bottom:70px; }
.cyber-mini-hero { padding:35px 0 38px; }
.cyber-mini-hero h1 { margin:0 0 16px; color:#142b3d; font:800 clamp(2.4rem,6vw,4rem)/1.04 'Manrope',sans-serif; letter-spacing:-.045em; }
.cyber-mini-hero h1 span { color:#39835e; }
.cyber-mini-hero > p:last-child { max-width:650px; color:#536572; font-size:1.05rem; line-height:1.7; }
.cyber-topic-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.cyber-topic { position:relative; padding:25px 25px 22px; border:1px solid #dce5e9; border-radius:13px; background:#fff; box-shadow:0 8px 28px rgba(22,43,57,.04); }
.cyber-topic-number { color:#39835e; font-size:.68rem; font-weight:800; letter-spacing:.12em; }
.cyber-topic h2 { margin:9px 0 12px; color:#17354a; font:750 1.18rem 'Manrope',sans-serif; }
.cyber-topic p { margin:0 0 9px; color:#536572; font-size:.92rem; line-height:1.65; }
.cyber-topic p:last-child { margin-bottom:0; }
.escape-gate { margin-top:32px; padding:26px; border-radius:13px; background:#142b3d; color:#fff; }
.escape-gate .debrief-kicker { color:#c9f36a; }
.escape-gate h2 { color:#fff; font:750 1.35rem 'Manrope',sans-serif; }
.escape-gate > p:not(.debrief-kicker):not(.escape-progress) { color:#d3dce3; line-height:1.55; }
.escape-key { display:inline-flex; align-items:center; gap:12px; padding:7px 12px; border:1px solid #688096; border-radius:7px; background:#20394f; color:#fff; cursor:pointer; }
.escape-key kbd { padding:5px 9px; border:1px solid #9db0bd; border-bottom-width:3px; border-radius:5px; background:#f5f7f8; color:#17354a; font:700 .8rem 'DM Sans',sans-serif; }
.escape-key span { font-size:.8rem; }
.escape-progress { display:inline-block; margin:0 0 0 12px; color:#d3dce3; font-size:.78rem; }
.escape-next { margin-top:15px; }
.escape-next[hidden] { display:none; }
.debrief-end-note { margin-top:24px; padding:16px 19px; border-left:4px solid #34bd68; background:#f2f7f4; color:#435a50; line-height:1.55; }
@media(max-width:680px) { .cyber-mini { padding-top:24px; padding-bottom:45px; }.cyber-topic-grid { grid-template-columns:1fr; }.cyber-topic { padding:21px; }.escape-gate { padding:21px; } }
