body {background: var(--background-color);color: var(--text-color);font-family: var(--font-family);font-size: var(--base-font-size);line-height: 1.6;}.projects-section {width: 85%;max-width: 1200px;margin: 0 auto;padding: 50px 0;}.projects-header {max-width: 760px;margin: 0 auto 40px;text-align: center;}.projects-header h2 {margin: 0 0 12px;color: var(--title-color);font-family: var(--font-family);font-size: clamp(2rem, 4vw, 2.8rem);line-height: 1.2;}.projects-header p {margin: 0;color: var(--muted-text-color);font-family: var(--font-family);font-size: var(--base-font-size);line-height: 1.7;}.projects-header button {margin-top: 22px;padding: 12px 22px;background: var(--accent-color);border: 1px solid var(--accent-color);border-radius: var(--radius-small);box-shadow: var(--shadow-small);font-family: var(--font-family);font-size: var(--base-font-size);font-weight: 700;cursor: pointer;transition: background-color var(--transition), border-color var(--transition), transform var(--transition), box-shadow var(--transition);}.projects-header button a {color: var(--off-white-color);text-decoration: none;}.projects-header button:hover {background: var(--title-color);border-color: var(--title-color);transform: translateY(-2px);box-shadow: var(--shadow-medium);}.projects-header button:active {transform: translateY(0);box-shadow: var(--shadow-small);}.projects-header button:focus-visible {outline: 3px solid var(--border-color);outline-offset: 3px;}.projects-grid {display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 24px;align-items: start;}.project-card {position: relative;width: 100%;min-width: 0;overflow: hidden;background: var(--section-color);border: 1px solid var(--border-color);border-radius: var(--radius-large);box-shadow: var(--shadow-small);cursor: pointer;transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);}.project-card:not(.is-expanded):hover {transform: translateY(-4px);box-shadow: var(--shadow-medium);}.project-preview {position: relative;width: 100%;aspect-ratio: 1 / 1;overflow: hidden;}.preview-images {display: grid;grid-template-columns: 1fr 1fr;width: 100%;height: 100%;}.preview-image {position: relative;min-width: 0;overflow: hidden;}.preview-image:first-child {border-right: 1px solid rgba(250, 250, 250, 0.35);}.preview-image img {display: block;width: 100%;height: 100%;object-fit: cover;transition: transform 0.45s ease, filter 0.35s ease;}.project-card:not(.is-expanded):hover .preview-image img {transform: scale(1.04);}.preview-image span {position: absolute;top: 12px;padding: 5px 9px;background: rgba(32, 36, 31, 0.72);color: var(--off-white-color);border: 1px solid rgba(250, 250, 250, 0.25);border-radius: var(--radius-small);font-family: var(--font-family);font-size: 0.75rem;font-weight: 700;letter-spacing: 0.04em;text-transform: uppercase;}.preview-image:first-child span {left: 12px;}.preview-image:last-child span {right: 12px;}.preview-overlay {position: absolute;inset: 0;display: flex;flex-direction: column;justify-content: flex-end;padding: 22px;background: linear-gradient( to top, rgba(32, 36, 31, 0.88) 0%, rgba(32, 36, 31, 0.58) 24%, rgba(32, 36, 31, 0.10) 58%, rgba(32, 36, 31, 0) 75% );color: var(--off-white-color);pointer-events: none;}.preview-info h3 {margin: 0 0 5px;color: var(--off-white-color);font-family: var(--font-family);font-size: 1.15rem;line-height: 1.3;}.preview-info p {margin: 0;color: rgba(250, 250, 250, 0.82);font-family: var(--font-family);font-size: 0.9rem;}.expand-hint {align-self: flex-end;margin-top: 14px;color: rgba(250, 250, 250, 0.75);font-family: var(--font-family);font-size: 0.75rem;letter-spacing: 0.03em;}.project-details {display: none;}.project-card.is-expanded {grid-column: 1 / -1;cursor: pointer;box-shadow: var(--shadow-medium);border-color: var(--border-color);}.project-card.is-expanded .project-preview {display: none;}.project-card.is-expanded .project-details {display: block;animation: projectReveal 0.28s ease both;}.project-gallery {display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 18px;padding: 18px;}.project-photo {position: relative;width: 100%;min-width: 0;margin: 0;overflow: hidden;background: var(--background-color);border: 1px solid var(--inside-border-color);border-radius: var(--radius-medium);}.project-photo img {display: block;width: 100%;aspect-ratio: 4 / 3;object-fit: cover;transition: transform 0.45s ease;}.project-card.is-expanded .project-photo:hover img {transform: scale(1.015);}.photo-label {position: absolute;z-index: 2;top: 14px;left: 14px;padding: 6px 11px;background: rgba(32, 36, 31, 0.78);color: var(--off-white-color);border: 1px solid rgba(250, 250, 250, 0.25);border-radius: var(--radius-small);font-family: var(--font-family);font-size: 0.8rem;font-weight: 700;letter-spacing: 0.04em;text-transform: uppercase;}.project-information {padding: 4px 24px 28px;}.project-date {margin: 0 0 6px;color: var(--accent-color);font-family: var(--font-family);font-size: 0.9rem;font-weight: 700;}.project-information h3 {margin: 0 0 10px;color: var(--title-color);font-family: var(--font-family);font-size: clamp(1.3rem, 2.5vw, 1.7rem);line-height: 1.3;}.project-description {max-width: 850px;margin: 0;color: var(--muted-text-color);font-family: var(--font-family);font-size: var(--base-font-size);line-height: 1.7;}@keyframes projectReveal {from {opacity: 0;transform: translateY(-8px);}to {opacity: 1;transform: translateY(0);}}@media (max-width: 950px) {.projects-section {width: 85%;}.projects-grid {grid-template-columns: repeat(2, minmax(0, 1fr));}.project-card.is-expanded {grid-column: 1 / -1;}.project-gallery {gap: 14px;padding: 14px;}.project-information {padding: 4px 20px 24px;}}@media (max-width: 650px) {.projects-section {width: 85%;padding: 50px 0;}.projects-header {margin-bottom: 30px;}.projects-header h2 {font-size: 2rem;}.projects-header button {width: 100%;max-width: 320px;padding: 12px 18px;}.projects-grid {grid-template-columns: 1fr;gap: 20px;}.project-card.is-expanded {grid-column: auto;}.project-preview {aspect-ratio: 1 / 1;}.project-gallery {grid-template-columns: 1fr;gap: 14px;padding: 14px;}.project-photo img {aspect-ratio: 4 / 3;}.project-information {padding: 4px 18px 22px;}.preview-overlay {padding: 18px;}.preview-info h3 {font-size: 1.05rem;}.expand-hint {margin-top: 10px;}}@media (max-width: 400px) {.projects-section {width: 90%;}.preview-image span {top: 9px;padding: 4px 7px;font-size: 0.68rem;}.preview-image:first-child span {left: 9px;}.preview-image:last-child span {right: 9px;}.preview-overlay {padding: 14px;}.preview-info h3 {font-size: 0.95rem;}.preview-info p {font-size: 0.8rem;}.project-gallery {padding: 10px;}.project-information {padding: 4px 14px 18px;}}@media (prefers-reduced-motion: reduce) {.project-card, .project-photo img, .preview-image img, .project-card.is-expanded .project-details {animation: none;transition: none;}}