:root {
    --accent-red: #d04b43;
    --paper-portrait-bg: #abc9dc;
    --cube-color-primary: #ff6b00;
    --cube-color-paper: #f3efe7;
    --cube-color-secondary: #4a4a4a;
    --cube-color-red: #d04b43;
    --cube-light-fill: #ffa020;
    --cube-light-rim: #ffb040;
    --theme-surface: rgba(255, 255, 255, 0.03);
    --theme-surface-strong: rgba(255, 255, 255, 0.06);
    --theme-line: rgba(255, 255, 255, 0.16);
    --theme-line-strong: rgba(255, 255, 255, 0.55);
    --theme-wash: rgba(255, 107, 0, 0.12);
    --theme-hover: rgba(255, 107, 0, 0.08);
    --theme-nav-bg: rgba(0, 0, 0, 0.88);
    --theme-toggle-track: rgba(255, 255, 255, 0.1);
    --theme-toggle-border: rgba(255, 255, 255, 0.22);
    --theme-toggle-shadow: 0 14px 30px rgba(0, 0, 0, 0.26);
    --theme-card-shadow: none;
    --theme-card-shadow-hover: none;
    --theme-overlay: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 100%);
    --theme-clients-bg: var(--white);
    --theme-clients-heading: #000000;
}

html[data-theme="washi"] {
    --black: #f1ede6;
    --white: #173a63;
    --accent: #2f67a7;
    --accent-red: #c6453e;
    --paper-portrait-bg: #a8c9de;
    --cube-color-primary: #8eb6d1;
    --cube-color-paper: #f7f3ec;
    --cube-color-secondary: #173a63;
    --cube-color-red: #c6453e;
    --cube-light-fill: #7ea9d2;
    --cube-light-rim: #bb4a43;
    --gray: #d9e5ef;
    --gray-light: #95b2c9;
    --theme-surface: rgba(124, 166, 203, 0.14);
    --theme-surface-strong: rgba(94, 145, 192, 0.22);
    --theme-line: rgba(23, 58, 99, 0.18);
    --theme-line-strong: rgba(23, 58, 99, 0.36);
    --theme-wash: rgba(137, 184, 219, 0.32);
    --theme-hover: rgba(95, 147, 197, 0.18);
    --theme-nav-bg: rgba(241, 237, 230, 0.84);
    --theme-toggle-track: rgba(23, 58, 99, 0.1);
    --theme-toggle-border: rgba(23, 58, 99, 0.16);
    --theme-toggle-shadow: 0 18px 40px rgba(40, 75, 116, 0.12);
    --theme-card-shadow: 0 24px 60px rgba(47, 84, 128, 0.08);
    --theme-card-shadow-hover: 0 28px 72px rgba(47, 84, 128, 0.14);
    --theme-overlay: linear-gradient(180deg, rgba(241, 237, 230, 0) 0%, rgba(23, 58, 99, 0.9) 100%);
    --theme-clients-bg: rgba(255, 255, 255, 0.62);
    --theme-clients-heading: var(--white);
}

html[data-theme="washi"] body {
    background-color: var(--black);
    background-image:
        radial-gradient(circle at 14% 14%, rgba(171, 205, 231, 0.3), transparent 28%),
        radial-gradient(circle at 79% 16%, rgba(114, 161, 203, 0.2), transparent 24%),
        radial-gradient(circle at 74% 74%, rgba(55, 101, 157, 0.14), transparent 30%),
        radial-gradient(circle at 26% 82%, rgba(192, 219, 240, 0.22), transparent 28%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.48), rgba(215, 229, 239, 0.18)),
        repeating-linear-gradient(115deg, rgba(255, 255, 255, 0.2) 0 2px, rgba(255, 255, 255, 0) 2px 12px);
    background-attachment: fixed;
}

html[data-theme="washi"] body::before {
    background:
        repeating-linear-gradient(0deg, transparent, transparent 99px, rgba(30, 77, 128, 0.12) 99px, rgba(30, 77, 128, 0.12) 100px),
        repeating-linear-gradient(90deg, transparent, transparent 99px, rgba(30, 77, 128, 0.12) 99px, rgba(30, 77, 128, 0.12) 100px);
    opacity: 0.9;
}

html[data-theme="washi"] body::after {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 68% 34%, rgba(255, 255, 255, 0.22), transparent 18%),
        radial-gradient(circle at 18% 58%, rgba(106, 152, 197, 0.1), transparent 18%);
    mix-blend-mode: multiply;
    opacity: 0.8;
    z-index: 0;
}

nav {
    justify-content: flex-start;
    background: var(--theme-nav-bg);
    backdrop-filter: blur(18px) saturate(1.15);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
}

html[data-theme="washi"] nav {
    border-bottom-color: rgba(23, 58, 99, 0.24);
    box-shadow: 0 14px 36px rgba(39, 73, 112, 0.08);
}

.theme-toggle {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 0.85rem;
    padding: 0.55rem 0.85rem;
    border: 2px solid var(--theme-toggle-border);
    background: rgba(255, 255, 255, 0.05);
    color: var(--white);
    cursor: pointer;
    font: inherit;
    transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
    box-shadow: var(--theme-toggle-shadow);
}

html[data-theme="washi"] .theme-toggle {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(219, 232, 241, 0.54));
}

.theme-toggle:hover {
    opacity: 1;
    transform: translateY(-1px);
    border-color: var(--accent);
}

.theme-toggle:focus-visible {
    outline: 3px solid var(--accent);
    outline-offset: 3px;
}

.theme-toggle-track {
    width: 3.2rem;
    height: 1.7rem;
    border-radius: 999px;
    background: var(--theme-toggle-track);
    position: relative;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

html[data-theme="washi"] .theme-toggle-track {
    box-shadow: inset 0 0 0 1px rgba(23, 58, 99, 0.1);
}

.theme-toggle-thumb {
    position: absolute;
    top: 0.2rem;
    left: 0.22rem;
    width: 1.3rem;
    height: 1.3rem;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.08), 0 8px 18px rgba(0, 0, 0, 0.25);
    transition: transform 0.2s ease, background 0.2s ease;
}

html[data-theme="washi"] .theme-toggle-thumb {
    transform: translateX(1.45rem);
    background: linear-gradient(135deg, var(--accent-red), #d9645b);
}

.theme-toggle-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1;
}

.theme-toggle-label,
.theme-toggle-meta {
    font-family: 'Bebas Neue', sans-serif;
    letter-spacing: 0.14em;
}

.theme-toggle-label {
    font-size: 1rem;
}

.theme-toggle-meta {
    font-size: 0.78rem;
    opacity: 0.72;
}

html[data-theme="washi"] .theme-toggle-meta {
    opacity: 1;
    color: rgba(23, 58, 99, 0.74);
}

html[data-theme="washi"] .nav-toggle span {
    background: var(--white);
}

html[data-theme="washi"] .nav-links {
    background: rgba(241, 237, 230, 0.95);
    border-bottom-color: rgba(23, 58, 99, 0.2);
}

html[data-theme="washi"] .nav-links a {
    background: rgba(255, 255, 255, 0.26);
    border-color: rgba(23, 58, 99, 0.18);
}

html[data-theme="washi"] .nav-links a.active,
html[data-theme="washi"] .nav-links a:hover {
    background: var(--white);
    color: #f7f3ec;
}

html[data-theme="washi"] .nav-links a.cta-nav {
    background: var(--accent-red);
    border-color: var(--accent-red);
    color: #f7f3ec;
}

html[data-theme="washi"] .nav-links a.cta-nav:hover {
    background: var(--white);
    border-color: var(--white);
    color: #f7f3ec;
}

html[data-theme="washi"] .logo-cursor {
    background: var(--accent-red);
    box-shadow: 0 0 8px var(--accent-red), 0 0 12px rgba(198, 69, 62, 0.5);
}

html[data-theme="washi"] .logo:hover .logo-cursor {
    animation: cursorBlink 1s steps(1) infinite, cursorGlowWashi 2s ease-in-out infinite;
}

@keyframes cursorGlowWashi {
    0%, 100% {
        box-shadow: 0 0 8px var(--accent-red), 0 0 12px rgba(198, 69, 62, 0.45);
    }

    50% {
        box-shadow: 0 0 12px var(--accent-red), 0 0 22px rgba(198, 69, 62, 0.4), 0 0 34px rgba(47, 103, 167, 0.18);
    }
}

html[data-theme="washi"] .hero-label {
    background: linear-gradient(135deg, var(--accent-red), #d8675d);
    color: #f7f3ec;
    box-shadow: 0 16px 32px rgba(198, 69, 62, 0.18);
}

html[data-theme="washi"] .hero-title span {
    -webkit-text-stroke: 1.5px rgba(247, 243, 236, 0.94);
    paint-order: stroke fill;
}

html[data-theme="washi"] .hero-title span:first-child,
html[data-theme="washi"] .hero-title span:nth-child(2),
html[data-theme="washi"] .page-header h1 {
    text-shadow: 10px 10px 0 rgba(126, 174, 217, 0.3);
}

html[data-theme="washi"] .hero-title .accent {
    text-shadow: 10px 10px 0 rgba(47, 103, 167, 0.22);
}

html[data-theme="washi"] .hero::after {
    background: linear-gradient(90deg, transparent 0, var(--accent-red) 18%, var(--accent) 48%, var(--accent) 82%, transparent 100%);
}

html[data-theme="washi"] .hero-description,
html[data-theme="washi"] .thoughts-note,
html[data-theme="washi"] .thought-pull {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.58), rgba(171, 205, 230, 0.2));
    border-top-color: rgba(23, 58, 99, 0.12);
    border-right-color: rgba(23, 58, 99, 0.12);
    border-bottom-color: rgba(23, 58, 99, 0.08);
    box-shadow: 0 18px 48px rgba(47, 84, 128, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

html[data-theme="washi"] .thought-pull {
    border-color: rgba(47, 103, 167, 0.48);
}

html[data-theme="washi"] .thoughts-note strong,
html[data-theme="washi"] .thought-pull strong {
    color: var(--accent-red);
}

html[data-theme="washi"] .page-header,
html[data-theme="washi"] footer,
html[data-theme="washi"] .project-card,
html[data-theme="washi"] .project-card-tags span {
    border-color: rgba(23, 58, 99, 0.22);
}

html[data-theme="washi"] .service-card,
html[data-theme="washi"] .thought-card,
html[data-theme="washi"] .thought-rail-item,
html[data-theme="washi"] .process-step,
html[data-theme="washi"] .value-card,
html[data-theme="washi"] .contact-form-wrapper,
html[data-theme="washi"] .service-detail-content,
html[data-theme="washi"] .service-detail-visual,
html[data-theme="washi"] .thoughts-rail-inner,
html[data-theme="washi"] .article-toc,
html[data-theme="washi"] .read-next,
html[data-theme="washi"] .cta-section {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.64), rgba(214, 228, 239, 0.34));
    border-color: rgba(23, 58, 99, 0.22);
    box-shadow: var(--theme-card-shadow);
}

html[data-theme="washi"] .service-card:hover,
html[data-theme="washi"] .thought-card:hover,
html[data-theme="washi"] .thought-rail-item:hover,
html[data-theme="washi"] .value-card:hover {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(178, 209, 233, 0.34));
    color: var(--white);
    box-shadow: var(--theme-card-shadow-hover);
}

html[data-theme="washi"] .service-card.accent,
html[data-theme="washi"] .contact-info {
    background: linear-gradient(160deg, #173a63 0%, #2f67a7 58%, #8eb6d1 150%);
    border-color: rgba(23, 58, 99, 0.28);
    box-shadow: 0 24px 56px rgba(47, 84, 128, 0.16);
    color: #f7f3ec;
}

html[data-theme="washi"] .service-card.accent .service-link,
html[data-theme="washi"] .contact-info a {
    color: #f7f3ec;
}

html[data-theme="washi"] .service-card.accent:hover {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(178, 209, 233, 0.34));
    color: var(--white);
}

html[data-theme="washi"] .work-item {
    border-color: rgba(23, 58, 99, 0.22);
    box-shadow: var(--theme-card-shadow);
}

html[data-theme="washi"] .work-overlay {
    background: var(--theme-overlay);
}

html[data-theme="washi"] .work-item:hover .work-overlay {
    background: linear-gradient(180deg, rgba(241, 237, 230, 0) 0%, rgba(16, 42, 72, 0.94) 100%);
}

html[data-theme="washi"] .work-category {
    background: rgba(248, 245, 239, 0.9);
    border-color: rgba(23, 58, 99, 0.26);
    color: var(--accent);
}

html[data-theme="washi"] .clients-section {
    position: relative;
    z-index: 2;
    isolation: isolate;
    background: transparent;
    border-top-color: rgba(23, 58, 99, 0.22);
    border-bottom-color: rgba(23, 58, 99, 0.22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4), var(--theme-card-shadow);
}

html[data-theme="washi"] .clients-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background: #f8f5ef;
    z-index: -1;
}

html[data-theme="washi"] .clients-section h3 {
    color: var(--theme-clients-heading) !important;
}

html[data-theme="washi"] .tech-tag,
html[data-theme="washi"] .thought-meta-chip {
    border-color: rgba(23, 58, 99, 0.24);
    background: rgba(255, 255, 255, 0.34);
}

html[data-theme="washi"] .thought-card .thought-meta-chip:first-child,
html[data-theme="washi"] .thought-rail-item .thought-meta-chip:first-child,
html[data-theme="washi"] .article-meta .thought-meta-chip:first-child {
    background: rgba(198, 69, 62, 0.08);
    border-color: rgba(198, 69, 62, 0.26);
    color: var(--accent-red);
}

html[data-theme="washi"] .tech-tag.accent {
    background: linear-gradient(135deg, #173a63 0%, #2f67a7 100%);
    border-color: #173a63;
    color: #f7f3ec;
    box-shadow: 0 0 8px rgba(47, 103, 167, 0.24), 0 0 16px rgba(47, 103, 167, 0.18);
}

html[data-theme="washi"] .process-step:nth-child(2n) {
    background: linear-gradient(180deg, rgba(229, 237, 244, 0.92), rgba(205, 220, 232, 0.72));
}

html[data-theme="washi"] .btn-outline {
    background: rgba(255, 255, 255, 0.28);
    color: var(--white);
    border-color: rgba(23, 58, 99, 0.3);
}

html[data-theme="washi"] .btn-outline:hover {
    background: var(--white);
    color: #f7f3ec;
}

html[data-theme="washi"] .btn-primary {
    background: linear-gradient(135deg, var(--accent-red), #d8675d);
    border-color: var(--accent-red);
    color: #f7f3ec;
    box-shadow: 12px 12px 0 rgba(198, 69, 62, 0.16);
}

html[data-theme="washi"] .btn-primary:hover {
    box-shadow: 6px 6px 0 rgba(198, 69, 62, 0.16);
}

html[data-theme="washi"] .credential-tag {
    background: var(--accent-red);
    color: #f7f3ec;
}

html[data-theme="washi"] .portrait-container {
    background: linear-gradient(160deg, #173a63 0%, #2f67a7 58%, #a8c9de 150%);
    border-color: rgba(23, 58, 99, 0.32);
}

html[data-theme="washi"] .mockup-window,
html[data-theme="washi"] .mockup-lms,
html[data-theme="washi"] .mockup-healthcare,
html[data-theme="washi"] .mockup-analytics,
html[data-theme="washi"] .mockup-workflow,
html[data-theme="washi"] .workflow {
    background: linear-gradient(180deg, #173a63 0%, #102747 100%);
    color: #edf3f8;
    border-color: rgba(255, 255, 255, 0.16);
    box-shadow: 0 20px 48px rgba(28, 53, 84, 0.18);
}

html[data-theme="washi"] .mockup-dots span:first-child {
    background: var(--accent-red);
}

html[data-theme="washi"] .mockup-dots span:nth-child(2) {
    background: #e9eef2;
}

html[data-theme="washi"] .mockup-dots span:nth-child(3) {
    background: #8eb6d1;
}

html[data-theme="washi"] .mockup-title,
html[data-theme="washi"] .mockup-stat-label,
html[data-theme="washi"] .mockup-course-status,
html[data-theme="washi"] .mockup-panel-title,
html[data-theme="washi"] .mockup-record-time,
html[data-theme="washi"] .mockup-legend-item,
html[data-theme="washi"] .mockup-kpi-label,
html[data-theme="washi"] .mockup-node-desc {
    color: #b8cadd;
}

html[data-theme="washi"] .mockup-lms-title,
html[data-theme="washi"] .mockup-course-name,
html[data-theme="washi"] .mockup-record-text,
html[data-theme="washi"] .mockup-schedule-name,
html[data-theme="washi"] .mockup-stat-value,
html[data-theme="washi"] .mockup-kpi-value,
html[data-theme="washi"] .mockup-workflow-stat-value,
html[data-theme="washi"] .mockup-node-label,
html[data-theme="washi"] .mockup-lms-nav span.active {
    color: #edf3f8;
}

html[data-theme="washi"] .mockup-bar {
    background: linear-gradient(to top, var(--accent), #a8c9de);
}

html[data-theme="washi"] .mockup-progress-fill {
    background: linear-gradient(90deg, var(--accent), #a8c9de);
}

html[data-theme="washi"] .mockup-course-icon {
    background: linear-gradient(135deg, var(--accent), #7eaed9);
    color: #f7f3ec;
}

html[data-theme="washi"] .mockup-healthcare-logo {
    color: #a8c9de;
}

html[data-theme="washi"] .mockup-record-dot,
html[data-theme="washi"] .mockup-legend-dot.green {
    background: #a8c9de;
}

html[data-theme="washi"] .mockup-record-dot.pending,
html[data-theme="washi"] .mockup-node-icon.sheet,
html[data-theme="washi"] .mockup-legend-dot.blue {
    background: var(--accent);
    color: #f7f3ec;
}

html[data-theme="washi"] .mockup-record-dot.urgent,
html[data-theme="washi"] .mockup-legend-dot.orange,
html[data-theme="washi"] .mockup-node-icon.email {
    background: var(--accent-red);
    color: #f7f3ec;
}

html[data-theme="washi"] .mockup-kpi-value.green {
    color: #a8c9de;
}

html[data-theme="washi"] .mockup-kpi-value.orange {
    color: var(--accent-red);
}

html[data-theme="washi"] .mockup-schedule-time {
    color: var(--accent);
}

html[data-theme="washi"] .mockup-node-icon.ai {
    background: #f7f3ec;
    color: var(--white);
}

html[data-theme="washi"] .mockup-node-icon.slack {
    background: #2f67a7;
    color: #f7f3ec;
}

html[data-theme="washi"] .mockup-node-icon.database {
    background: #173a63;
    color: #f7f3ec;
}

html[data-theme="washi"] .mockup-donut {
    background: conic-gradient(#a8c9de 0deg 136deg, var(--accent) 136deg 228deg, var(--accent-red) 228deg 292deg, #173a63 292deg 360deg);
}

html[data-theme="washi"] .mockup-node.ai {
    background: linear-gradient(135deg, #193857 0%, #224c75 100%);
}

html[data-theme="washi"] .mockup-workflow-status {
    color: #dfe9f2;
}

html[data-theme="washi"] .mockup-workflow-status::before {
    background: var(--accent-red);
}

html[data-theme="washi"] .mockup-workflow-node.trigger {
    border-color: rgba(168, 201, 222, 0.82);
    background: linear-gradient(135deg, rgba(25, 56, 87, 0.98), rgba(47, 103, 167, 0.54));
}

html[data-theme="washi"] .workflow-header,
html[data-theme="washi"] .workflow-stats {
    border-color: rgba(255, 255, 255, 0.16);
}

html[data-theme="washi"] .mockup-workflow-node.ai {
    border-color: rgba(198, 69, 62, 0.58);
    background: linear-gradient(135deg, #173a63 0%, #224c75 68%, rgba(198, 69, 62, 0.2) 100%);
}

html[data-theme="washi"] .mockup-workflow-node.action {
    border-color: rgba(168, 201, 222, 0.88);
}

html[data-theme="washi"] .mockup-workflow-connector {
    background: linear-gradient(90deg, #48698e, var(--accent), rgba(198, 69, 62, 0.8));
}

html[data-theme="washi"] .mockup-workflow-connector::after {
    color: var(--accent-red);
}

html[data-theme="washi"] .workflow-step {
    border-color: rgba(255, 255, 255, 0.22);
}

html[data-theme="washi"] .workflow-step.accent {
    color: #f7f3ec;
}

html[data-theme="washi"] .tech-tag.accent {
    animation: tagGlowWashi 3s ease-in-out infinite;
}

@keyframes tagGlowWashi {
    0%, 100% {
        box-shadow: 0 0 8px rgba(47, 103, 167, 0.25), 0 0 16px rgba(47, 103, 167, 0.18);
    }

    50% {
        box-shadow: 0 0 12px rgba(47, 103, 167, 0.32), 0 0 22px rgba(198, 69, 62, 0.16);
    }
}

html[data-theme="washi"] .service-detail-visual {
    background: linear-gradient(180deg, rgba(23, 58, 99, 0.96), rgba(16, 39, 71, 0.98));
}

html[data-theme="washi"] .about-portrait {
    background: linear-gradient(180deg, rgba(247, 243, 236, 0.94), rgba(168, 201, 222, 0.42));
    box-shadow: 0 24px 56px rgba(47, 84, 128, 0.14);
}

html[data-theme="washi"] img[data-paper-recolor] {
    display: block;
    background: linear-gradient(180deg, rgba(247, 243, 236, 0.7), rgba(168, 201, 222, 0.3));
}

html[data-theme="washi"] .form-group input,
html[data-theme="washi"] .form-group select,
html[data-theme="washi"] .form-group textarea {
    background: rgba(255, 255, 255, 0.54);
    color: var(--white);
    border-color: rgba(23, 58, 99, 0.22);
}

html[data-theme="washi"] .form-group select option {
    background: #eef4f8;
    color: var(--white);
}

html[data-theme="washi"] .credential-tag::after {
    background: rgba(255, 255, 255, 0.96);
    color: var(--white);
    border-color: rgba(23, 58, 99, 0.18);
}

html[data-theme="washi"] .article-footer {
    border-top-color: rgba(23, 58, 99, 0.22);
}

html[data-theme="washi"] .thought-breadcrumbs {
    color: rgba(23, 58, 99, 0.64);
}

html[data-theme="washi"] .thought-breadcrumbs a {
    color: rgba(23, 58, 99, 0.82);
}

html[data-theme="washi"] .thought-breadcrumbs a:hover {
    color: var(--accent-red);
    opacity: 1;
}

html[data-theme="washi"] .thought-breadcrumbs span {
    color: rgba(23, 58, 99, 0.48);
}

html[data-theme="washi"] .thought-breadcrumbs span:last-child {
    color: var(--white);
}

html[data-theme="washi"] .article-toc a:hover {
    color: var(--accent);
}

html[data-theme="washi"] .read-next {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(189, 214, 233, 0.26));
}

html[data-theme="washi"] .page-header p,
html[data-theme="washi"] .thoughts-intro,
html[data-theme="washi"] .thought-card p,
html[data-theme="washi"] .thought-rail-item p,
html[data-theme="washi"] .service-card p,
html[data-theme="washi"] .process-step p,
html[data-theme="washi"] .value-card p,
html[data-theme="washi"] .cta-section p,
html[data-theme="washi"] section.about-hero > p,
html[data-theme="washi"] .footer-copy {
    color: rgba(17, 44, 76, 0.82);
    opacity: 1;
}

html[data-theme="washi"] .footer-links a {
    color: rgba(17, 44, 76, 0.82);
    opacity: 0.88;
}

html[data-theme="washi"] .footer-links a:hover {
    color: var(--white);
    opacity: 1;
}

@media (max-width: 1024px) {
    .theme-toggle {
        margin-left: auto;
        margin-right: 0.25rem;
        padding: 0.45rem 0.7rem;
    }

    .theme-toggle-label {
        font-size: 0.9rem;
    }
}

@media (max-width: 768px) {
    .theme-toggle {
        gap: 0.55rem;
    }

    .theme-toggle-copy {
        display: none;
    }

    html[data-theme="washi"] .hero-title span:first-child,
    html[data-theme="washi"] .hero-title span:nth-child(2),
    html[data-theme="washi"] .page-header h1 {
        text-shadow: 6px 6px 0 rgba(126, 174, 217, 0.28);
    }

    html[data-theme="washi"] .hero-title .accent {
        text-shadow: 6px 6px 0 rgba(47, 103, 167, 0.2);
    }

    html[data-theme="washi"] .hero-title span {
        -webkit-text-stroke-width: 1px;
    }
}
