/* RESPONSIVE AND ACCESSIBILITY OVERRIDES */

@media (max-width: 760px) {
.achievement-pinboard {
        padding: 86px 20px 48px 66px;
        grid-template-columns: 1fr;
        gap: 38px;
    }

.achievement-pinboard .pinboard-thread {
        top: 82px;
        bottom: 45px;
        left: 34px;
    }

.achievement-pin-card,
    .achievement-pin-card:nth-of-type(2n) {
        width: 100%;
        margin: 0;
        grid-column: 1;
    }

.achievement-pin-card::before,
    .achievement-pin-card:nth-of-type(2n)::before {
        top: 53px;
        right: 100%;
        left: auto;
        width: 31px;
    }

.achievement-stop,
    .achievement-pin-card:nth-of-type(2n) .achievement-stop {
        top: 30px;
        right: auto;
        left: -55px;
    }

.achievement-certificate {
        grid-template-columns: minmax(0, 1fr) 96px;
    }

.certificate-lightbox-copy small {
        width: 100%;
        margin-left: 0;
    }
}

@media (max-width: 480px) {
.achievement-pinboard {
        padding-right: 14px;
        padding-left: 52px;
    }

.achievement-pinboard .pinboard-thread {
        left: 26px;
    }

.achievement-stop,
    .achievement-pin-card:nth-of-type(2n) .achievement-stop {
        left: -45px;
        width: 40px;
    }

.achievement-pin-card::before,
    .achievement-pin-card:nth-of-type(2n)::before {
        width: 23px;
    }

.achievement-paper,
    .achievement-pin-card:nth-of-type(2n) .achievement-paper {
        padding-inline: 17px;
    }

.achievement-card-heading {
        grid-template-columns: 50px minmax(0, 1fr);
        gap: 12px;
    }

.achievement-card-heading .achievement-badge {
        width: 50px;
        font-size: 23px;
    }

.achievement-card-heading h3 {
        font-size: 20px;
    }

.achievement-certificate {
        grid-template-columns: 1fr;
    }

.certificate-caption {
        padding-inline: 2px;
        flex-direction: row;
    }

.certificate-lightbox-card {
        box-shadow: 8px 10px 0 var(--ink);
    }
}

@media (max-width: 900px) {
.creative-stage-list {
        grid-template-columns: 1fr;
        gap: 48px;
    }

.interactive-project-card {
        width: min(100%, 620px);
        margin-inline: auto;
    }

.interactive-project-info > p {
        min-height: 0;
    }
}

@media (max-width: 600px) {
.creative-stage-showcase {
        padding: 72px 11px 88px;
    }

.interactive-project-card {
        padding: 11px;
        border-radius: 18px;
        box-shadow: 6px 7px 0 var(--ink);
    }

.interactive-project-topbar {
        font-size: 8px;
    }

.scratch-console {
        border-radius: 12px;
    }

.scratch-console-chrome {
        height: 31px;
    }

.interactive-project-info {
        padding: 16px 14px;
    }

.interactive-project-heading h3 {
        font-size: clamp(23px, 8vw, 31px);
    }

.interactive-project-footer {
        align-items: stretch;
        flex-direction: column;
    }

.interactive-project-footer > a {
        align-self: flex-start;
    }

.interactive-project-sticker {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
.creative-stage-showcase.is-open .interactive-project-card,
    .interactive-project-live i,
    .scratch-power-light {
        animation-duration: 0.01ms !important;
        animation-delay: 0s !important;
    }
}

@media (max-width: 1050px) {
.achievement-pinboard {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

.achievement-pin-card:nth-of-type(4n + 1) { grid-column: 1; }

.achievement-pin-card:nth-of-type(4n + 2) { grid-column: 2; }

.achievement-pin-card:nth-of-type(4n + 3) { grid-column: 2; }

.achievement-pin-card:nth-of-type(4n + 4) { grid-column: 1; }
}

@media (max-width: 760px) {
.achievement-pinboard {
        padding: 82px 25px 48px 67px;
        grid-template-columns: 1fr;
        gap: 38px;
    }

.achievement-pin-card,
    .achievement-pin-card:nth-of-type(n) {
        width: 100%;
        margin: 0;
        padding-top: 0;
        grid-column: 1;
    }

.achievement-stop,
    .achievement-pin-card:nth-of-type(n) .achievement-stop {
        top: 30px;
        right: auto;
        left: -32px;
        transform: translateX(0) rotate(-7deg);
    }

.achievement-pin-card:hover .achievement-stop {
        transform: rotate(5deg) scale(1.07);
    }

.achievement-stop::after {
        top: 50%;
        left: calc(100% - 1px);
        display: block;
        width: 17px;
        height: 0;
        transform: translateY(-50%);
        border-top: 3px solid var(--ink);
        border-left: 0;
    }

.achievement-certificate {
        grid-template-columns: minmax(0, 1fr) 96px;
    }
}

@media (prefers-reduced-motion: reduce) {
.achievement-pinboard .pinboard-thread,
    .achievement-certificate,
    .certificate-photo-frame img,
    .certificate-lightbox,
    .certificate-lightbox-card {
        transition-duration: 0.01ms !important;
    }
}

@media (max-width: 1180px) {
.content-container {
        width: min(calc(100% - 55px), var(--container));
    }

.hero-content {
        gap: 35px;
    }

.name-line {
        font-size: clamp(64px, 8.5vw, 100px);
    }

.role-line {
        font-size: clamp(34px, 4.9vw, 61px);
    }

.about-strip {
        grid-template-columns: 125px 1fr;
    }

.skill-cloud {
        max-width: none;
        grid-column: 1 / -1;
        justify-content: flex-start;
    }

.achievement-content {
        padding-inline: 16px;
    }
}

@media (max-width: 900px) {
body,
    a,
    button {
        cursor: auto;
    }

.cursor-dot,
    .cursor-ring {
        display: none;
    }

.portfolio-shell {
        padding-left: 0;
        padding-bottom: 88px;
    }

.side-dock {
        top: auto;
        right: 50%;
        bottom: 17px;
        left: auto;
        width: auto;
        max-width: calc(100vw - 30px);
        padding: 8px 10px;
        transform: translateX(50%);
        flex-direction: row;
        border-radius: 22px;
        box-shadow: 5px 5px 0 var(--ink);
    }

.dock-brand,
    .dock-divider,
    .dock-tip,
    .dock-label {
        display: none;
    }

.dock-item,
    .dock-icon {
        width: 48px;
        min-width: 48px;
        height: 48px;
    }

.hero-section {
        padding-top: 85px;
    }

.hero-content {
        grid-template-columns: 1fr;
        gap: 65px;
    }

.hero-copy {
        max-width: 690px;
    }

.profile-stage {
        width: min(100%, 560px);
        margin-inline: auto;
    }

.sticker-spark { left: 5%; }

.sticker-smile { right: 12%; }

.sticker-pencil { right: 7%; bottom: 23%; }

.about-strip {
        grid-template-columns: 1fr;
        gap: 18px;
    }

.section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

.achievement-timeline {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 42px 30px;
    }

.achievement-card:nth-of-type(2n) {
        margin-top: 80px;
    }

.timeline-path {
        opacity: 0.5;
    }
}

@media (max-width: 620px) {
:root {
        --border: 2.5px solid var(--ink);
        --shadow: 5px 5px 0 var(--ink);
    }

.content-container {
        width: calc(100% - 36px);
    }

.hero-section {
        padding-top: 65px;
    }

.availability-pill {
        font-size: 9px;
    }

.name-line {
        font-size: clamp(59px, 19vw, 84px);
    }

.role-line {
        font-size: clamp(31px, 10.3vw, 48px);
        line-height: 1.04;
    }

.role-line em {
        -webkit-text-stroke-width: 1.4px;
        text-shadow: 3px 3px 0 var(--ink);
    }

.hero-actions {
        align-items: flex-start;
        flex-direction: column;
        gap: 20px;
    }

.hero-stats {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
    }

.stat-card {
        min-width: 0;
        padding: 10px 7px;
        align-items: flex-start;
        flex-direction: column;
        gap: 2px;
    }

.stat-card strong { font-size: 21px; }

.stat-card span { font-size: 8px; }

.profile-stage {
        min-height: 505px;
    }

.profile-burst {
        height: 410px;
    }

.profile-polaroid {
        top: 58px;
        width: min(78%, 330px);
        padding: 11px 11px 16px;
        box-shadow: 7px 8px 0 var(--ink);
    }

.profile-caption {
        align-items: flex-start;
        flex-direction: column;
    }

.profile-caption strong { font-size: 21px; }

.profile-caption span { text-align: left; }

.mini-location {
        bottom: 28px;
        left: -2px;
    }

.mini-idea {
        top: 105px;
        right: -3px;
        padding: 10px;
    }

.mini-idea strong { display: none; }

.doodle-arrow { right: 0; bottom: 11px; width: 95px; }

.floating-sticker {
        transform: scale(0.78);
    }

.sticker-star { top: 23px; left: auto; right: 12px; }

.sticker-smile { top: 53%; right: 3px; }

.sticker-code { right: 10px; bottom: 20%; }

.sticker-spark { top: 45%; }

.sticker-pencil { display: none; }

.about-strip {
        padding: 23px 20px;
    }

.marquee-track {
        gap: 16px;
        font-size: 16px;
    }

.projects-section,
    .achievements-section {
        padding-block: 90px 100px;
    }

.section-heading {
        margin-bottom: 48px;
    }

.section-heading h2 {
        font-size: clamp(43px, 13.5vw, 66px);
    }

.section-heading > p {
        font-size: 12px;
    }

.projects-list {
        gap: 65px;
    }

.browser-bar {
        height: 34px;
    }

.browser-address {
        max-width: 145px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.project-pop-sticker {
        right: -18px;
        bottom: -35px;
        width: 68px;
        font-size: 10px;
    }

.project-copy h3 {
        font-size: 35px;
    }

.edge-sticker {
        display: none;
    }

.achievement-timeline {
        padding-left: 35px;
        grid-template-columns: 1fr;
        gap: 38px;
    }

.achievement-timeline::before {
        position: absolute;
        top: 20px;
        bottom: 20px;
        left: 14px;
        border-left: 3px dashed var(--ink);
        content: "";
    }

.timeline-path {
        display: none;
    }

.achievement-card:nth-of-type(2n) {
        margin-top: 0;
    }

.achievement-marker {
        top: 24px;
        left: -35px;
        width: 61px;
        transform: translateX(-50%) rotate(-7deg);
        font-size: 25px;
    }

.achievement-card:hover .achievement-marker {
        transform: translateX(-50%) rotate(8deg) scale(1.08);
    }

.achievement-content {
        min-height: 0;
        padding: 27px 20px 22px 35px;
    }

.trophy-doodle {
        display: none;
    }

.contact-section {
        padding-top: 95px;
    }

.contact-sun {
        width: 610px;
    }

.contact-inner h2 {
        font-size: clamp(48px, 15.5vw, 76px);
    }

.contact-button {
        max-width: 100%;
        padding: 14px 15px;
        font-size: 12px;
    }

.footer-bottom {
        margin-top: 75px;
        align-items: center;
        flex-direction: column;
        text-align: center;
    }
}

@media (hover: none), (pointer: coarse) {
body,
    a,
    button {
        cursor: auto;
    }

.cursor-dot,
    .cursor-ring {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
html {
        scroll-behavior: auto;
    }

*,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }

.reveal {
        opacity: 1;
        transform: none;
    }
}

@media (max-width: 1050px) {
.creative-project-stage {
        min-height: 620px;
    }

.project-stage-visual {
        width: min(63%, 540px);
    }

.project-stage-info {
        width: min(74%, 640px);
    }

.stage-side-caption {
        display: none;
    }
}

@media (max-width: 820px) {
.creative-stage-showcase {
        padding: 85px 24px 106px;
        border-radius: 28px;
    }

.creative-stage-list {
        gap: 62px;
    }

.creative-project-stage {
        min-height: 0;
        padding: 33px 25px 45px;
        border-radius: 24px;
    }

.project-stage-visual,
    .creative-project-stage:nth-child(2n) .project-stage-visual {
        width: min(82%, 520px);
        margin-right: auto;
        margin-left: auto;
    }

.project-stage-info,
    .creative-project-stage:nth-child(2n) .project-stage-info {
        width: min(92%, 610px);
        margin: -26px auto 0;
    }

.stage-sticker-one,
    .stage-sticker-two,
    .creative-stage-side-label {
        display: none;
    }

.project-stage-doodle {
        display: none;
    }
}

@media (max-width: 600px) {
.projects-section {
        padding-top: 105px;
    }

.creative-stage-showcase {
        padding: 77px 14px 91px;
        border-width: 2.5px;
        border-radius: 22px;
        box-shadow: 8px 9px 0 #171331;
    }

.creative-stage-topbar {
        height: 43px;
        padding-inline: 13px;
        font-size: 7px;
    }

.creative-stage-topbar strong {
        padding: 5px 7px;
    }

.creative-stage-list {
        gap: 42px;
    }

.creative-project-stage {
        padding: 27px 14px 33px;
        border-width: 2.5px;
        border-radius: 19px;
        box-shadow: 6px 7px 0 var(--ink);
    }

.project-stage-watermark {
        top: 45px;
        right: -3px;
        font-size: clamp(51px, 18vw, 76px);
    }

.project-stage-meta {
        margin-bottom: 20px;
        font-size: 7px;
    }

.project-stage-meta span,
    .project-stage-meta time {
        min-height: 25px;
        padding: 5px 7px;
        box-shadow: 2px 2px 0 var(--ink);
    }

.project-stage-visual,
    .creative-project-stage:nth-child(2n) .project-stage-visual {
        width: calc(100% - 20px);
        transform: rotate(-0.8deg);
    }

.creative-project-stage:nth-child(2n) .project-stage-visual {
        transform: rotate(0.8deg);
    }

.stage-image-frame {
        padding: 7px 7px 27px;
        border-width: 2.5px;
        border-radius: 13px;
        box-shadow: 5px 6px 0 var(--ink);
    }

.stage-image-frame::before {
        inset: 7px 7px 27px;
    }

.stage-image-frame figcaption {
        right: 10px;
        bottom: 7px;
        left: 10px;
        font-size: 6px;
    }

.stage-image-shine {
        top: 7px;
        bottom: 27px;
    }

.stage-visual-tape {
        width: 76px;
        height: 21px;
    }

.stage-number-badge {
        top: 17px;
        right: -17px;
        width: 48px;
        border-width: 2px;
        box-shadow: 3px 3px 0 var(--ink);
        font-size: 14px;
    }

.creative-project-stage:nth-child(2n) .stage-number-badge {
        right: auto;
        left: -17px;
    }

.project-stage-info,
    .creative-project-stage:nth-child(2n) .project-stage-info {
        width: calc(100% - 2px);
        min-height: 0;
        margin-top: -14px;
        padding: 27px 18px 23px;
        transform: rotate(0);
        border-width: 2.5px;
        border-radius: 15px;
        box-shadow: 5px 6px 0 var(--ink);
    }

.stage-info-kicker {
        font-size: 17px;
    }

.project-stage-info h3 {
        max-width: 100%;
        font-size: clamp(25px, 9vw, 34px);
    }

.stage-project-description,
    .stage-tech-list {
        max-width: 100%;
    }

.stage-project-description {
        font-size: 9px;
    }

.stage-info-stamp {
        display: none;
    }

.creative-stage-footer-note {
        right: 15px;
        bottom: 25px;
        left: 15px;
        font-size: 16px;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
.creative-stage-showcase.is-open .creative-project-stage,
    .creative-stage-showcase.is-open .stage-image-frame img,
    .creative-stage-showcase.is-open .project-stage-info,
    .creative-stage-showcase.is-open .stage-tech-list span,
    .creative-stage-topbar i,
    .creative-stage-sticker {
        animation-duration: 0.01ms !important;
        animation-delay: 0s !important;
    }

.project-stage-visual,
    .stage-image-frame img,
    .stage-image-shine,
    .stage-project-link,
    .stage-project-link svg {
        transition-duration: 0.01ms !important;
    }
}

@media (max-width: 980px) {
.projects-pinboard {
        padding-inline: 37px;
        gap: 30px;
    }

.project-pin-sheet {
        padding-inline: 19px;
    }

.project-pin-note {
        right: -10px;
        width: 78px;
        font-size: 14px;
    }

.note-favorite {
        display: none;
    }
}

@media (max-width: 760px) {
.projects-pinboard {
        min-height: 0;
        padding: 88px 24px 62px 61px;
        grid-template-columns: 1fr;
        gap: 45px;
    }

.projects-pinboard::after {
        position: absolute;
        z-index: 0;
        top: 82px;
        bottom: 53px;
        left: 31px;
        border-left: 4px dashed rgba(36, 34, 56, 0.6);
        content: "";
    }

.project-board-thread {
        display: none;
    }

.project-thumbtack {
        top: 53px;
        left: -29px;
    }

.project-board-note {
        display: none;
    }

.project-board-label {
        font-size: 8px;
    }
}

@media (max-width: 480px) {
.projects-pinboard {
        padding-right: 15px;
        padding-left: 49px;
        border-radius: 18px;
        box-shadow: 8px 8px 0 var(--ink), inset 0 0 0 5px rgba(255, 255, 255, 0.13);
    }

.projects-pinboard::after {
        left: 25px;
    }

.project-thumbtack {
        left: -23px;
        width: 25px;
    }

.project-pin-sheet {
        padding: 20px 16px 28px;
        box-shadow: 6px 7px 0 rgba(36, 34, 56, 0.84);
    }

.project-pin-copy h3 {
        font-size: 29px;
    }

.project-pin-note {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
.project-board-thread,
    .project-pin-sheet,
    .project-preview-window img,
    .project-pin-note {
        transition-duration: 0.01ms !important;
    }
}

@media (max-width: 1100px) {
.profile-collage {
        grid-template-rows: repeat(9, 72px);
    }

.profile-name-sheet {
        grid-column-end: 10;
    }

.profile-story-note {
        grid-column-start: 5;
    }

.profile-role-ribbon {
        min-width: 210px;
    }

.profile-short-bio {
        display: none;
    }

.profile-photo-note img {
        height: 365px;
    }
}

@media (max-width: 900px) {
.profile-section {
        padding: 42px 0 110px;
    }

.profile-collage {
        min-height: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: none;
        align-items: start;
    }

.profile-name-sheet,
    .profile-photo-note,
    .profile-story-note,
    .profile-toolkit-note,
    .profile-score-note {
        grid-row: auto;
    }

.profile-name-sheet {
        grid-column: 1 / -1;
        min-height: 260px;
    }

.profile-photo-note {
        grid-column: 1;
    }

.profile-story-note {
        grid-column: 2;
        min-height: 390px;
    }

.profile-toolkit-note {
        grid-column: 1;
    }

.profile-score-note {
        grid-column: 2;
    }

.profile-short-bio {
        display: block;
    }

.profile-story-note > p {
        font-size: 12px;
    }

.story-actions {
        align-items: flex-start;
        flex-direction: column;
        gap: 17px;
    }

.profile-float-star,
    .profile-float-face {
        display: none;
    }
}

@media (max-width: 620px) {
.profile-section {
        padding-top: 26px;
    }

.profile-folder-tabs {
        height: 36px;
        padding-left: 8px;
        overflow: hidden;
    }

.profile-folder-tabs span {
        height: 31px;
        padding-inline: 10px;
        white-space: nowrap;
    }

.profile-folder-tabs .is-selected {
        height: 36px;
    }

.profile-collage {
        padding: 14px;
        grid-template-columns: 1fr;
        gap: 25px;
        border-radius: 22px;
        box-shadow: 7px 7px 0 var(--ink);
    }

.profile-name-sheet,
    .profile-photo-note,
    .profile-story-note,
    .profile-toolkit-note,
    .profile-score-note {
        grid-column: 1;
        width: 100%;
    }

.profile-name-sheet {
        min-height: 340px;
        padding: 23px 22px 25px 31px;
    }

.profile-name-sheet h1 {
        margin-top: 10px;
        font-size: clamp(60px, 19vw, 82px);
    }

.profile-role-ribbon {
        position: relative;
        right: auto;
        bottom: auto;
        min-width: 0;
        margin-top: 16px;
    }

.profile-short-bio {
        max-width: none;
        margin-top: 18px;
    }

.name-sheet-stamp {
        top: 24px;
        right: 15px;
        width: 59px;
        font-size: 7px;
    }

.profile-photo-note {
        justify-self: center;
        width: calc(100% - 20px);
    }

.profile-photo-note img {
        height: min(100vw, 390px);
    }

.profile-story-note {
        min-height: 0;
        padding: 23px 20px;
    }

.profile-toolkit-note,
    .profile-score-note {
        padding: 20px 16px;
    }

.score-list {
        gap: 5px;
    }

.profile-float-code {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
.notebook-button,
    .notebook-button::before,
    .notebook-button-icon {
        transition-duration: 0.01ms !important;
    }
}

@media (max-width: 1120px) {
.creative-desk {
        padding: 27px;
        grid-template-columns: minmax(0, 1.5fr) minmax(275px, 0.75fr);
    }

.notebook-page {
        padding-inline: 22px;
    }

.desk-polaroid {
        width: min(84%, 230px);
    }

.desk-polaroid img {
        height: 275px;
    }

.notebook-story-page h1 {
        font-size: clamp(26px, 3vw, 40px);
    }

.notebook-actions {
        width: min(100%, 190px);
        grid-template-columns: minmax(0, 1fr);
        align-items: flex-start;
        gap: 15px;
    }

.notebook-actions .notebook-button {
        width: 100%;
    }

.laptop-screen-content {
        padding-inline: 15px;
    }
}

@media (max-width: 900px) {
.workspace-section {
        padding-bottom: 120px;
    }

.creative-desk {
        min-height: 0;
        padding: 26px;
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        gap: 34px;
    }

.desk-notebook,
    .desk-laptop,
    .desk-sticky-board {
        grid-column: 1;
        grid-row: auto;
    }

.desk-notebook {
        min-height: 730px;
    }

.desk-laptop {
        width: min(100%, 560px);
        margin-inline: auto;
    }

.desk-sticky-board {
        width: min(100%, 560px);
        margin: 0 auto;
    }

.desk-project-folder {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        grid-column: 1;
        grid-row: auto;
        justify-self: end;
        margin: 0 24px 24px 0;
        transform: rotate(5deg);
    }

.desk-mug {
        top: 760px;
        right: -25px;
    }

.desk-pencil {
        right: auto;
        bottom: 30px;
        left: 12%;
    }

.desk-sparkle {
        top: 49%;
        right: 7%;
    }
}

@media (max-width: 700px) {
.workspace-label {
        margin-inline: 4px;
        align-items: flex-start;
        flex-direction: column;
    }

.creative-desk {
        padding: 18px;
        border-radius: 27px;
        box-shadow: 8px 8px 0 var(--ink);
    }

.desk-notebook {
        display: block;
        min-height: 0;
        transform: none;
        filter: drop-shadow(6px 7px 0 var(--ink));
    }

.desk-notebook:hover {
        transform: translateY(-2px);
    }

.notebook-binding {
        display: none;
    }

.notebook-page {
        min-height: 640px;
        border-width: 2.5px;
    }

.notebook-profile-page {
        margin-bottom: 14px;
        border-right-width: 2.5px;
        border-radius: 20px 20px 8px 8px;
    }

.notebook-story-page {
        border-left-width: 2.5px;
        border-radius: 8px 8px 20px 20px;
    }

.notebook-story-page h1 {
        margin-top: 35px;
        font-size: clamp(35px, 10vw, 50px);
    }

.notebook-actions {
        width: min(100%, 340px);
        grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
        align-items: flex-start;
    }

.notebook-actions .notebook-button {
        width: 100%;
    }

.desk-polaroid img {
        height: 320px;
    }

.desk-mug,
    .desk-paperclip,
    .desk-sparkle {
        display: none;
    }
}

@media (max-width: 480px) {
.workspace-section {
        padding-top: 31px;
    }

.workspace-label strong {
        font-size: 27px;
    }

.creative-desk {
        padding: 13px;
        gap: 26px;
    }

.notebook-page {
        min-height: 0;
        padding: 27px 19px 34px;
    }

.notebook-profile-page {
        min-height: 585px;
    }

.notebook-story-page {
        min-height: 650px;
    }

.desk-polaroid {
        width: calc(100% - 25px);
    }

.desk-polaroid img {
        height: min(90vw, 350px);
    }

.notebook-arrow,
    .notebook-photo-note {
        display: none;
    }

.notebook-identity {
        margin-top: 27px;
    }

.notebook-story-page h1 {
        font-size: 39px;
    }

.notebook-short-bio {
        margin-top: 24px;
    }

.notebook-actions {
        width: min(100%, 210px);
        grid-template-columns: minmax(0, 1fr);
    }

.notebook-actions .notebook-button {
        width: 100%;
    }

.notebook-signature {
        right: 22px;
        bottom: 18px;
    }

.laptop-screen-content {
        min-height: 315px;
        padding: 20px 13px;
    }

.laptop-title strong {
        font-size: 22px;
    }

.desk-sticky-board {
        gap: 5px;
    }

.desk-sticky {
        min-height: 140px;
        padding-inline: 4px;
    }

.desk-sticky strong {
        font-size: 29px;
    }

.desk-sticky > span {
        font-size: 14px;
    }

.desk-project-folder {
        position: relative;
        right: auto;
        bottom: auto;
        left: auto;
        grid-column: 1;
        width: 170px;
        margin: 10px 0 15px auto;
    }

.desk-pencil {
        display: none;
    }
}

@media (max-width: 900px) {
.has-js .page-entering .side-dock {
        animation-name: intro-dock-mobile;
    }
}

@media (max-width: 700px) {
.desk-notebook {
        --notebook-intro-rotation: 0deg;
    }

.has-js .page-entering .notebook-profile-page,
    .has-js .page-entering .notebook-story-page {
        animation-name: intro-page-mobile;
        transform-origin: center;
    }

.has-js .page-entering .notebook-story-page {
        animation-delay: 0.74s;
    }
}

@media (max-width: 1050px) {
.achievement-pinboard {
        min-height: 860px;
        padding-inline: 58px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 30px 42px;
    }

.pinboard-thread {
        display: none;
    }

.achievement-pinboard::after {
        position: absolute;
        z-index: 0;
        top: 85px;
        bottom: 55px;
        left: 50%;
        border-left: 4px dashed rgba(36, 34, 56, 0.62);
        content: "";
    }

.achievement-pin-card:nth-of-type(2n) {
        margin-top: 90px;
    }
}

@media (max-width: 760px) {
.projects-section,
    .achievements-section {
        padding-block: 92px 105px;
    }

.achievement-pinboard {
        min-height: 0;
        padding: 82px 25px 42px 67px;
        grid-template-columns: 1fr;
        gap: 38px;
    }

.achievement-pinboard::after {
        top: 83px;
        bottom: 48px;
        left: 35px;
    }

.achievement-pin-card,
    .achievement-pin-card:nth-of-type(2n) {
        margin-top: 0;
    }

.achievement-stop {
        top: 30px;
        left: -32px;
        width: 46px;
        font-size: 11px;
    }

.achievement-stop::after {
        top: 50%;
        left: calc(100% - 1px);
        width: 17px;
        height: 0;
        transform: translateY(-50%);
        border-top: 3px solid var(--ink);
        border-left: 0;
    }

.achievement-paper,
    .achievement-pin-card:nth-of-type(2n) .achievement-paper {
        min-height: 0;
        padding: 43px 22px 29px;
        transform: rotate(-0.8deg);
    }

.achievement-pin-card:nth-of-type(2n) .achievement-paper {
        transform: rotate(0.8deg);
    }

.pinboard-heading-note {
        display: none;
    }
}

@media (max-width: 480px) {
.achievement-pinboard {
        padding-right: 18px;
        padding-left: 55px;
        border-radius: 18px;
        box-shadow: 8px 8px 0 var(--ink), inset 0 0 0 5px rgba(255, 255, 255, 0.13);
    }

.achievement-pinboard::after {
        left: 27px;
    }

.achievement-stop {
        left: -27px;
        width: 42px;
    }

.achievement-paper h3 {
        font-size: 22px;
    }
}

@media (max-width: 1180px) {
.project-sticker-idea {
        left: 8px;
        width: 78px;
        height: 62px;
    }

.project-sticker-creative {
        right: 7px;
        width: 86px;
    }

.project-sticker-bolt {
        left: 10px;
        width: 60px;
    }

.project-sticker-web {
        right: 8px;
        width: 82px;
    }

.project-background-doodle {
        opacity: 0.55;
    }
}

@media (max-width: 900px) {
.project-bg-blob-yellow {
        right: -190px;
    }

.project-bg-blob-mint {
        left: -185px;
    }

.project-sticker-idea {
        top: 22%;
        left: 11px;
    }

.project-sticker-creative {
        top: 17%;
        right: 10px;
    }

.project-sticker-bolt,
    .project-sticker-web,
    .project-doodle-loop {
        display: none;
    }
}

@media (max-width: 620px) {
.projects-section {
        background:
            radial-gradient(circle at 13% 16%, rgba(255, 217, 61, 0.25) 0 2px, transparent 3px),
            linear-gradient(155deg, #5136c8 0%, #7357ff 52%, #563bcf 100%);
        background-size: 38px 38px, auto;
    }

.project-sticker-idea {
        top: 19%;
        left: 5px;
        width: 66px;
        height: 54px;
    }

.project-sticker-idea strong {
        font-size: 13px;
    }

.project-sticker-creative {
        top: 15%;
        right: 4px;
        width: 72px;
    }

.project-sticker-creative strong {
        font-size: 13px;
    }

.project-sticker-creative small {
        font-size: 6px;
    }

.project-doodle-stars {
        right: -22px;
        bottom: 21%;
        width: 90px;
    }
}

@media (prefers-reduced-motion: reduce) {
.project-bg-blob,
    .project-section-sticker,
    .project-doodle-stars {
        animation-duration: 0.01ms !important;
        animation-delay: 0s !important;
    }
}

@media (max-width: 1100px) {
.exhibition-heading {
        grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.7fr);
        gap: 45px;
    }

.exhibition-gallery-grid {
        gap: 112px;
    }

.exhibition-piece {
        width: min(75%, 720px);
    }

.exhibit-side-note {
        right: -137px;
        width: 108px;
    }

.exhibition-piece:nth-child(2n) .exhibit-side-note {
        right: auto;
        left: -137px;
    }

.exhibit-plaque {
        width: 82%;
        padding-inline: 22px;
    }
}

@media (max-width: 900px) {
.projects-section {
        padding-block: 115px 132px;
    }

.exhibition-heading {
        grid-template-columns: 1fr;
        align-items: start;
    }

.exhibition-curator-note {
        width: min(100%, 570px);
    }

.exhibition-gallery-grid {
        grid-template-columns: 1fr;
        gap: 106px;
    }

.exhibition-piece,
    .exhibition-piece:nth-child(2n) {
        width: min(84%, 680px);
        margin: 0 auto;
    }

.exhibit-side-note {
        display: none;
    }

.exhibition-piece:not(:last-child)::after,
    .exhibition-piece:nth-child(2n):not(:last-child)::after {
        right: auto;
        bottom: -97px;
        left: 50%;
        width: 55px;
        height: 76px;
        transform: translateX(-50%) rotate(8deg);
    }

.exhibit-plaque,
    .exhibition-piece:nth-child(2n) .exhibit-plaque {
        width: 88%;
        margin-right: auto;
        margin-left: auto;
    }

.exhibition-ceiling-lights > span:nth-child(2) {
        display: none;
    }

.exhibition-floor-note {
        left: 22px;
    }
}

@media (max-width: 620px) {
.projects-section {
        padding-block: 96px 108px;
    }

.exhibition-heading {
        margin-bottom: 52px;
        gap: 38px;
    }

.exhibition-title-block h2 {
        font-size: clamp(43px, 14vw, 65px);
    }

.exhibition-curator-note {
        padding: 28px 22px 23px;
        box-shadow: 6px 7px 0 var(--ink);
    }

.exhibition-curator-note::after {
        display: none;
    }

.exhibition-marquee-sign {
        top: 24px;
        width: calc(100% - 36px);
        padding-inline: 14px;
        justify-content: center;
        gap: 8px;
    }

.exhibition-marquee-sign strong {
        font-size: 12px;
    }

.exhibition-marquee-sign small {
        padding-left: 8px;
        font-size: 6px;
    }

.exhibition-ceiling-lights {
        right: -5%;
        left: -5%;
    }

.exhibition-ceiling-lights > span {
        width: 92px;
    }

.exhibition-gallery-grid {
        gap: 64px;
    }

.exhibition-piece,
    .exhibition-piece:nth-child(2n) {
        width: 100%;
        margin-inline: 0;
    }

.exhibit-number {
        top: 50px;
        right: -3px;
        width: 50px;
        border-width: 2.5px;
        font-size: 14px;
    }

.exhibition-piece:nth-child(2n) .exhibit-number {
        right: -3px;
        left: auto;
        transform: rotate(8deg);
    }

.exhibition-piece:not(:last-child)::after,
    .exhibition-piece:nth-child(2n):not(:last-child)::after {
        display: none;
    }

.exhibit-hanging-system {
        top: -33px;
        right: 24%;
        left: 24%;
    }

.exhibit-artwork {
        padding: 10px 10px 8px;
        border-width: 3px;
        box-shadow: 6px 7px 0 rgba(36, 34, 56, 0.75), inset 0 0 0 3px var(--project-accent);
    }

.exhibition-piece:hover .exhibit-artwork {
        box-shadow: 8px 10px 0 rgba(36, 34, 56, 0.72), inset 0 0 0 3px var(--project-accent);
    }

.exhibit-screen {
        border-width: 2px;
    }

.exhibit-status {
        bottom: 7px;
        left: 7px;
        padding: 5px 7px;
        font-size: 6px;
    }

.exhibit-artwork figcaption {
        padding-top: 7px;
        font-size: 7px;
    }

.exhibit-plaque {
        width: calc(100% - 8px);
        margin-top: 20px;
        margin-right: auto;
        margin-left: auto;
        padding: 25px 18px 22px;
        box-shadow: 5px 6px 0 var(--ink);
    }

.exhibit-plaque h3 {
        max-width: 100%;
        font-size: clamp(24px, 8vw, 31px);
    }

.exhibit-plaque > p {
        font-size: 10px;
    }

.exhibit-selected-stamp,
    .exhibition-ticket,
    .exhibition-rope {
        display: none;
    }

.exhibition-floor-note {
        right: 12px;
        bottom: 23px;
        left: 12px;
        font-size: 16px;
        text-align: center;
    }

.portfolio-end-note {
        margin-top: 60px;
        padding: 18px;
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

.portfolio-end-note p {
        font-size: 20px;
    }

.exhibition-orbit-one {
        right: -220px;
    }

.exhibition-spark-two {
        display: none;
    }
}

@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) {
body,
    a,
    button {
        cursor: auto;
    }

.cursor-dot,
    .cursor-ring {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
.exhibition-piece,
    .exhibit-artwork,
    .exhibit-screen img,
    .exhibit-screen-shine {
        transition-duration: 0.01ms !important;
    }
}

@media (max-width: 1050px) {
.achievement-pinboard {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

.achievement-pin-card:nth-of-type(4n + 1) { grid-column: 1; }

.achievement-pin-card:nth-of-type(4n + 2) { grid-column: 2; }

.achievement-pin-card:nth-of-type(4n + 3) { grid-column: 2; }

.achievement-pin-card:nth-of-type(4n + 4) { grid-column: 1; }
}

@media (max-width: 760px) {
.achievement-pinboard {
        padding: 82px 25px 48px 67px;
        grid-template-columns: 1fr;
        gap: 38px;
    }

.achievement-pin-card,
    .achievement-pin-card:nth-of-type(n) {
        width: 100%;
        margin: 0;
        padding-top: 0;
        grid-column: 1;
    }

.achievement-stop,
    .achievement-pin-card:nth-of-type(n) .achievement-stop {
        top: 30px;
        right: auto;
        left: -32px;
        transform: rotate(-7deg);
    }

.achievement-pin-card:hover .achievement-stop {
        transform: rotate(5deg) scale(1.07);
    }

.achievement-stop::after {
        top: 50%;
        left: calc(100% - 1px);
        width: 17px;
        height: 0;
        transform: translateY(-50%);
        border-top: 3px solid var(--ink);
        border-left: 0;
    }
}

@media (max-width: 1050px) {
.achievement-card-heading h3 {
        font-size: clamp(19px, 3vw, 27px);
    }

.certificate-caption strong {
        font-size: 13px;
    }
}

@media (max-width: 760px) {
.achievement-card-heading h3 {
        font-size: clamp(20px, 6vw, 27px);
    }

.achievement-certificate {
        grid-template-columns: minmax(0, 1fr) 105px;
    }

.certificate-caption strong {
        font-size: 12px;
    }
}

@media (max-width: 480px) {
.achievement-certificate {
        grid-template-columns: 1fr;
    }

.certificate-caption strong {
        font-size: 13px;
    }
}

@media (max-width: 900px) {
.creative-stage-list {
        grid-template-columns: 1fr;
        gap: 48px;
    }
}

@media (max-width: 600px) {
.creative-stage-showcase {
        padding: 72px 11px 88px;
    }
}
