:root {
    color-scheme: light;
    --bg: #f5f3ef;
    --text: #1f2428;
    --muted: #5d666f;
    --line: #d7d1c7;
    --panel: #ffffff;
    --accent: #1c5d99;
    --accent-dark: #123f69;
    --soft: #ece7de;
    --glass-bg: rgba(255, 255, 255, 0.64);
    --glass-strong: rgba(255, 255, 255, 0.82);
    --glass-line: rgba(255, 255, 255, 0.7);
    --glass-shadow: 0 18px 46px rgba(26, 45, 65, 0.14);
    --glass-shadow-hover: 0 24px 58px rgba(26, 45, 65, 0.19);
    --glass-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.86), inset 0 -1px 0 rgba(18, 63, 105, 0.08);
    --glass-blue: rgba(28, 93, 153, 0.14);
    --glass-teal: rgba(32, 116, 128, 0.1);
    --glass-rose: rgba(138, 59, 36, 0.1);
}

a {
    color: var(--accent);
}

a:hover,
a:focus {
    color: var(--accent-dark);
}

.site-nav {
    position: sticky;
    top: 14px;
    z-index: 20;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 28px;
    width: fit-content;
    max-width: 100%;
    padding: 7px;
    border: 1px solid rgba(28, 93, 153, 0.13);
    border-radius: 999px;
    background: var(--glass-strong);
    box-shadow: 0 10px 28px rgba(26, 45, 65, 0.1);
    font-size: 14px;
}

.site-nav a {
    display: inline-block;
    padding: 7px 10px;
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.56);
    color: var(--accent-dark);
    text-decoration: none;
    box-shadow: var(--glass-highlight);
    transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.site-nav a:hover,
.site-nav a:focus {
    border-color: var(--accent);
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 8px 18px rgba(28, 93, 153, 0.16), var(--glass-highlight);
    outline: none;
    transform: translateY(-1px);
}

.back {
    color: var(--accent-dark);
}

.site-nav + .back {
    margin-top: -10px;
}

.site-footer {
    padding-top: 10px;
    border-top: 1px solid var(--line);
}

@supports ((-webkit-backdrop-filter: blur(18px)) or (backdrop-filter: blur(18px))) {
    .site-nav,
    .site-nav a {
        -webkit-backdrop-filter: blur(22px) saturate(155%);
        backdrop-filter: blur(22px) saturate(155%);
    }
}

body.liquid-site {
    min-height: 100vh;
    background:
        linear-gradient(125deg, rgba(255, 255, 255, 0.92) 0 16%, transparent 16% 100%),
        linear-gradient(205deg, rgba(205, 226, 235, 0.78) 0 24%, transparent 24% 100%),
        linear-gradient(32deg, rgba(240, 219, 196, 0.8) 0 22%, transparent 22% 100%),
        linear-gradient(180deg, #f8f7f3 0%, #eef4f6 44%, #f6efe7 100%);
    background-attachment: fixed;
}

body.liquid-site::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.22) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255, 255, 255, 0.2) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), transparent 70%);
}

.liquid-site header,
.liquid-site main,
.liquid-site footer,
.liquid-site .site-header,
.liquid-site .blog-shell {
    position: relative;
}

.liquid-site header,
.liquid-site .site-header {
    padding-top: 36px;
}

.liquid-site h1,
.liquid-site h2,
.liquid-site h3 {
    text-wrap: balance;
}

.liquid-site .intro {
    color: rgba(31, 36, 40, 0.72);
}

.liquid-site .featured-project,
.liquid-site .card,
.liquid-site .project,
.liquid-site .path-card,
.liquid-site .post,
.liquid-site .search-panel,
.liquid-site .result,
.liquid-site table,
.liquid-site h2 + ul,
.liquid-site h3 + h4 + ul,
.liquid-site h4 + ul,
.liquid-site .meta-grid div,
.liquid-site .stats div,
.liquid-site .split article,
.liquid-site .timeline div,
.liquid-site .status {
    border-color: rgba(255, 255, 255, 0.68);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.48)),
        linear-gradient(180deg, var(--glass-blue), transparent 62%);
    box-shadow: var(--glass-shadow), var(--glass-highlight);
}

.liquid-site .card,
.liquid-site .project,
.liquid-site .path-card,
.liquid-site .result,
.liquid-site .post,
.liquid-site .featured-project {
    border-radius: 8px;
    transition: border-color 170ms ease, box-shadow 170ms ease, transform 170ms ease, background-color 170ms ease;
}

.liquid-site .card:hover,
.liquid-site .card:focus,
.liquid-site .project:hover,
.liquid-site .project:focus,
.liquid-site .path-card:hover,
.liquid-site .path-card:focus,
.liquid-site .result:hover,
.liquid-site .result:focus,
.liquid-site .featured-project:hover,
.liquid-site .featured-project:focus-within {
    border-color: rgba(28, 93, 153, 0.38);
    box-shadow: var(--glass-shadow-hover), 0 0 0 1px rgba(255, 255, 255, 0.78) inset;
    transform: translateY(-2px);
}

.liquid-site .featured-project a:not(.featured-layout),
.liquid-site .featured-copy span,
.liquid-site .load-more,
.liquid-site .quick-links button,
.liquid-site .folder-list span,
.liquid-site .metric-list span {
    box-shadow: var(--glass-highlight);
}

.liquid-site .featured-project a:not(.featured-layout),
.liquid-site .featured-copy span,
.liquid-site .load-more {
    border-color: rgba(28, 93, 153, 0.44);
    background:
        linear-gradient(180deg, rgba(38, 118, 188, 0.88), rgba(18, 63, 105, 0.94)),
        rgba(28, 93, 153, 0.82);
    color: #ffffff;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.liquid-site .featured-project a:not(.featured-layout):hover,
.liquid-site .featured-project a:not(.featured-layout):focus,
.liquid-site .load-more:hover,
.liquid-site .load-more:focus {
    border-color: rgba(18, 63, 105, 0.72);
    box-shadow: 0 14px 32px rgba(28, 93, 153, 0.24), var(--glass-highlight);
    transform: translateY(-1px);
}

.liquid-site .site-note,
.liquid-site .note {
    border: 1px solid rgba(255, 255, 255, 0.68);
    border-left: 4px solid rgba(138, 59, 36, 0.52);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.88), rgba(255, 250, 240, 0.58)),
        linear-gradient(90deg, var(--glass-rose), transparent 55%);
    box-shadow: var(--glass-shadow), var(--glass-highlight);
}

.liquid-site .section-title,
.liquid-site h2 {
    border-color: rgba(28, 93, 153, 0.16);
}

.liquid-site input[type="search"] {
    border-color: rgba(255, 255, 255, 0.72);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    box-shadow: inset 0 1px 4px rgba(26, 45, 65, 0.08), var(--glass-highlight);
}

.liquid-site input[type="search"]:focus {
    border-color: rgba(28, 93, 153, 0.56);
    outline: 3px solid rgba(28, 93, 153, 0.16);
}

.liquid-site .quick-links button {
    border-color: rgba(255, 255, 255, 0.72);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.62);
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.liquid-site .quick-links button:hover,
.liquid-site .quick-links button:focus {
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 8px 18px rgba(28, 93, 153, 0.14), var(--glass-highlight);
    transform: translateY(-1px);
}

.liquid-site .bob-photo-grid figure,
.liquid-site .featured-image,
.liquid-site .post-body figure {
    border-color: rgba(255, 255, 255, 0.72);
    border-radius: 8px;
    box-shadow: var(--glass-shadow);
}

.liquid-site .bob-photo-grid figure {
    position: relative;
}

.liquid-site .bob-photo-grid img {
    height: 160px;
}

.liquid-site .bob-photo-grid figcaption {
    position: absolute;
    right: 8px;
    bottom: 8px;
    left: 8px;
    padding: 6px 8px;
    border: 1px solid rgba(255, 255, 255, 0.64);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
    color: var(--accent-dark);
    box-shadow: var(--glass-highlight);
}

.liquid-site .site-footer {
    margin-bottom: 24px;
    padding: 16px 18px;
    border: 1px solid rgba(255, 255, 255, 0.68);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.58);
    box-shadow: var(--glass-shadow), var(--glass-highlight);
}

@supports ((-webkit-backdrop-filter: blur(18px)) or (backdrop-filter: blur(18px))) {
    .liquid-site .featured-project,
    .liquid-site .card,
    .liquid-site .project,
    .liquid-site .path-card,
    .liquid-site .post,
    .liquid-site .search-panel,
    .liquid-site .result,
    .liquid-site .site-note,
    .liquid-site .note,
    .liquid-site table,
    .liquid-site h2 + ul,
    .liquid-site h3 + h4 + ul,
    .liquid-site h4 + ul,
    .liquid-site .meta-grid div,
    .liquid-site .stats div,
    .liquid-site .split article,
    .liquid-site .timeline div,
    .liquid-site .status,
    .liquid-site .site-footer,
    .liquid-site .bob-photo-grid figcaption,
    .liquid-site input[type="search"],
    .liquid-site .quick-links button {
        -webkit-backdrop-filter: blur(24px) saturate(160%);
        backdrop-filter: blur(24px) saturate(160%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-nav a,
    .liquid-site .card,
    .liquid-site .project,
    .liquid-site .path-card,
    .liquid-site .result,
    .liquid-site .post,
    .liquid-site .featured-project,
    .liquid-site .featured-project a,
    .liquid-site .load-more,
    .liquid-site .quick-links button {
        transition: none;
    }

    .site-nav a:hover,
    .site-nav a:focus,
    .liquid-site .card:hover,
    .liquid-site .card:focus,
    .liquid-site .project:hover,
    .liquid-site .project:focus,
    .liquid-site .path-card:hover,
    .liquid-site .path-card:focus,
    .liquid-site .result:hover,
    .liquid-site .result:focus,
    .liquid-site .featured-project:hover,
    .liquid-site .featured-project:focus-within,
    .liquid-site .quick-links button:hover,
    .liquid-site .quick-links button:focus {
        transform: none;
    }
}

@media (prefers-contrast: more), (prefers-reduced-transparency: reduce) {
    .site-nav,
    .site-nav a,
    .liquid-site .featured-project,
    .liquid-site .card,
    .liquid-site .project,
    .liquid-site .path-card,
    .liquid-site .post,
    .liquid-site .search-panel,
    .liquid-site .result,
    .liquid-site .site-note,
    .liquid-site .note,
    .liquid-site .site-footer,
    .liquid-site .bob-photo-grid figcaption,
    .liquid-site input[type="search"],
    .liquid-site .quick-links button {
        background: #ffffff;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
}

@media (max-width: 620px) {
    .site-nav {
        gap: 7px;
        margin-bottom: 24px;
        border-radius: 8px;
    }

    .site-nav a {
        flex: 1 1 auto;
        text-align: center;
    }

    body.liquid-site {
        background-attachment: scroll;
    }

    .liquid-site .bob-photo-grid img {
        height: 142px;
    }
}

/* Clearer Liquid Glass pass: more translucent surfaces with the same static-site structure. */
:root {
    --glass-bg: rgba(255, 255, 255, 0.44);
    --glass-strong: rgba(255, 255, 255, 0.62);
    --glass-line: rgba(255, 255, 255, 0.52);
    --glass-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.72), inset 0 -1px 0 rgba(18, 63, 105, 0.08);
    --glass-blue: rgba(28, 93, 153, 0.1);
    --glass-teal: rgba(32, 116, 128, 0.08);
    --glass-rose: rgba(138, 59, 36, 0.08);
}

.site-nav {
    border-color: rgba(255, 255, 255, 0.46);
    background: rgba(255, 255, 255, 0.48);
}

.site-nav a {
    border-color: rgba(255, 255, 255, 0.5);
    background: rgba(255, 255, 255, 0.32);
}

.site-nav a:hover,
.site-nav a:focus {
    background: rgba(255, 255, 255, 0.66);
}

.liquid-site .featured-project,
.liquid-site .card,
.liquid-site .project,
.liquid-site .path-card,
.liquid-site .post,
.liquid-site .search-panel,
.liquid-site .result,
.liquid-site table,
.liquid-site h2 + ul,
.liquid-site h3 + h4 + ul,
.liquid-site h4 + ul,
.liquid-site .meta-grid div,
.liquid-site .stats div,
.liquid-site .split article,
.liquid-site .timeline div,
.liquid-site .status {
    border-color: rgba(255, 255, 255, 0.5);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.58), rgba(255, 255, 255, 0.24)),
        linear-gradient(180deg, var(--glass-blue), transparent 62%);
}

.liquid-site .site-note,
.liquid-site .note {
    border-color: rgba(255, 255, 255, 0.5);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.56), rgba(255, 250, 240, 0.28)),
        linear-gradient(90deg, var(--glass-rose), transparent 55%);
}

.liquid-site input[type="search"],
.liquid-site .quick-links button,
.liquid-site .bob-photo-grid figcaption,
.liquid-site .site-footer {
    border-color: rgba(255, 255, 255, 0.5);
    background: rgba(255, 255, 255, 0.42);
}

.liquid-site .quick-links button:hover,
.liquid-site .quick-links button:focus {
    background: rgba(255, 255, 255, 0.66);
}

@supports ((-webkit-backdrop-filter: blur(18px)) or (backdrop-filter: blur(18px))) {
    .site-nav,
    .site-nav a {
        -webkit-backdrop-filter: blur(30px) saturate(170%);
        backdrop-filter: blur(30px) saturate(170%);
    }

    .liquid-site .featured-project,
    .liquid-site .card,
    .liquid-site .project,
    .liquid-site .path-card,
    .liquid-site .post,
    .liquid-site .search-panel,
    .liquid-site .result,
    .liquid-site .site-note,
    .liquid-site .note,
    .liquid-site table,
    .liquid-site h2 + ul,
    .liquid-site h3 + h4 + ul,
    .liquid-site h4 + ul,
    .liquid-site .meta-grid div,
    .liquid-site .stats div,
    .liquid-site .split article,
    .liquid-site .timeline div,
    .liquid-site .status,
    .liquid-site .site-footer,
    .liquid-site .bob-photo-grid figcaption,
    .liquid-site input[type="search"],
    .liquid-site .quick-links button {
        -webkit-backdrop-filter: blur(32px) saturate(175%);
        backdrop-filter: blur(32px) saturate(175%);
    }
}
