/* Review round 1: legible mobile composition and a project-based starting point. */
:root { color-scheme: light; }
html { scroll-padding-top: 100px; }
body { overflow-wrap: break-word; }
:where(a,button,select,summary) { touch-action: manipulation; -webkit-tap-highlight-color: #b8d0ff; }
:where(a,button,select,summary):focus-visible { outline: 3px solid #174ea6; outline-offset: 4px; }
:where(.hero,.finder-section,.site-footer) :where(a,button):focus-visible { outline-color: #a8c7ff; }
.mobile-portrait { display: none; }
.career-employer { font-weight: 700; color: #102039 !important; margin: 8px 0; }
.timeline { grid-template-columns: 1fr; }
.timeline > div:nth-child(n) { display: grid; grid-template-columns: minmax(160px,.7fr) minmax(220px,1fr) minmax(0,1.6fr); gap: 8px 24px; padding: 28px 0; border: 0; text-align: left; }
.timeline > div > span { grid-column: 1; grid-row: 1 / span 3; }
.timeline h3 { grid-column: 2; margin: 0; }
.timeline .career-employer { grid-column: 2; margin: 0; }
.timeline p:not(.career-employer) { grid-column: 3; grid-row: 1 / span 3; margin: 0; }
.finder-section { background: #10243b; color: #fff; padding-block: 56px; display: grid; grid-template-columns: 1fr 1fr; gap: 28px 48px; }
.finder-section h2 { margin: 0 0 16px; font-size: clamp(30px,3.7vw,48px); line-height: 1.1; max-width: 20ch; }
.finder-section p { font-size: 17px; line-height: 1.65; color: #e5ecf6; margin: 0; max-width: 54ch; }
.finder-controls { display: flex; flex-wrap: wrap; gap: 12px; grid-column: 1; }
.finder-controls button { font: inherit; min-height: 48px; padding: 10px 18px; border: 0; background: #284262; color: #fff; cursor: pointer; border-radius: 0; }
.finder-controls button[aria-pressed="true"] { background: #dce9ff; color: #10243b; }
.finder-controls button:hover { background: #3d5b80; color: #fff; }
.finder-result { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
.finder-result h3 { font-size: 32px; margin: 0 0 16px; }
.finder-result .text-link { display: inline-flex; min-height: 48px; align-items: center; margin-top: 18px; color: #fff; font-size: 17px; text-decoration: underline; text-underline-offset: 5px; }
.project-preview { display: block; width: 100%; height: 100%; }
.project-preview:hover img { opacity: .87; }
.project-category { color: #174ea6 !important; font-size: 15px !important; font-weight: 600; margin: 0 0 12px; }
.project-contribution,.project-contact,#focus .focus-grid article { border: 0; }
.contact-next { margin: 16px 0 0; max-width: 52ch; font-size: 16px; }
.site-footer { padding-bottom: max(24px,env(safe-area-inset-bottom)); }
.site-header,.proof-strip,.timeline > div,.site-footer { border: 0; }
.button,.nav-button,.language,.brand-mark { box-shadow: none; /* taste-skill-ignore: explicitly removes legacy shadows. */ border-radius: 0; }
.hero-actions .button-primary { background: #245bd0; }
.finder-section { padding-inline: clamp(24px,4vw,56px); }
.main-nav > a { min-height: 44px; display: inline-flex; align-items: center; }
.site-footer { font-size: 15px; }
.section-heading > p:last-child,.focus-grid p,.work-card p,.timeline p,.credential-card p,.contact-section p { color: #17243a; }
.workflow-evidence { display: grid; grid-template-columns: 1fr 1.1fr; gap: 48px; align-items: center; padding-block: 64px; background: #e5edf4; }
.workflow-evidence h2 { font-size: clamp(30px,3vw,44px); line-height: 1.1; max-width: 20ch; margin: 0 0 24px; text-wrap: balance; }
.workflow-evidence p { font-size: 17px; line-height: 1.65; max-width: 52ch; }
.workflow-evidence figure { margin: 0; }
.workflow-evidence img { width: 100%; height: auto; display: block; }
.workflow-evidence figcaption { font-size: 15px; margin-top: 14px; }
.workflow-evidence .text-link { display: inline-flex; align-items: center; min-height: 48px; text-decoration: underline; text-underline-offset: 5px; color: #174ea6; }
.chips span,.credential-card { border: 0; border-radius: 0; }
.credential-card { box-shadow: none; /* taste-skill-ignore: explicitly removes legacy shadows. */ }
.review-enter { animation: review-entrance 480ms cubic-bezier(.2,.7,.3,1) both; }
@keyframes review-entrance { from { opacity: .75; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
.project-grid .work-card--sree .project-art { aspect-ratio: 16 / 10; }
.project-grid .work-card--sree .project-art img { padding: 0; object-fit: contain; }
@media(max-width:800px) {
 .hero { background: #0b1b2f; padding: 32px 24px 0; display: flex; flex-direction: column; gap: 24px; }
 .hero-copy { width: 100%; }
 .hero::before { content: none; }
 .hero h1 { max-width: 22ch; font-size: clamp(28px,7.2vw,42px); }
 .hero-lead { font-size: 17px; line-height: 1.6; }
 .hero-meta { margin-block: 24px 0; }
 .mobile-portrait { display:block; width: calc(100% + 48px); max-width: none; height: 220px; object-fit: cover; object-position: center 23%; margin: 0 -24px; }
 .finder-section { grid-template-columns: 1fr; padding-block: 36px; gap: 24px; }
 .finder-result { grid-column: 1; grid-row: auto; }
 .finder-controls { gap: 8px; }
 .finder-controls button { padding-inline: 14px; }
 .timeline > div:nth-child(n) { display:block; padding: 24px 0; }
 .timeline h3 { margin-top: 12px; }
 .timeline .career-employer { margin-block: 8px; }
 .main-nav { border-radius: 0; box-shadow: none; /* taste-skill-ignore: explicitly removes legacy shadows. */ }
 .main-nav :focus-visible { outline-color: #a8c7ff; }
 .project-contact h3,.project-grid .work-card h3 { font-size: 24px; }
 .workflow-evidence { grid-template-columns: 1fr; gap: 24px; padding-block: 36px; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior: auto !important; }
 *,*::before,*::after { animation: none !important; transition: none !important; }
}
