.hero-contact{border-top:1px solid var(--color-border-subtle)}.hero-inner--contact{align-items:center}.hero-text-stack--contact{max-width:36rem}.hero-visual--contact{min-height:100%;display:flex;flex-direction:column;justify-content:space-between}.hero-image-pane--contact{padding-bottom:var(--space-6)}.hero-image-frame--contact{min-height:230px}.hero-image-main--contact::before{background-image:url('/assets/images/dining-hall-sunlit.webp');background-size:cover;background-position:center 46%}.hero-image-main-inner--contact{min-height:180px}.hero-badge-row--contact{margin-top:var(--space-8)}.contact-page main,.contact-page .section{background:transparent}.contact-layout{padding-top:var(--space-24);padding-bottom:var(--space-32)}.contact-layout-inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--space-16);align-items:flex-start}.section-header--contact{margin-bottom:var(--space-12)}.contact-form{border-radius:var(--radius-xl);border:1px solid var(--color-border-subtle);background:linear-gradient(145deg,#ffffff 0,#f9fafb 40%,#f5f5f7 100%);box-shadow:var(--shadow-soft);padding:var(--space-10) var(--space-10) var(--space-12);display:flex;flex-direction:column;gap:var(--space-6)}.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-8)}.contact-form-grid--secondary{margin-top:var(--space-2)}.contact-preferences,.contact-subscribe{margin-top:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:var(--space-4)}.contact-preferences-title,.contact-subscribe-title{font-family:var(--font-serif);font-size:var(--font-size-lg);margin-bottom:var(--space-1)}.contact-preferences-copy,.contact-subscribe-copy{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-soft);max-width:34rem}.contact-preferences-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.input-group--checkbox{flex-direction:row;align-items:flex-start;gap:var(--space-3);margin-bottom:0}.input-group--checkbox .input-label--checkbox{font-size:12px;letter-spacing:0.06em;text-transform:none;color:var(--color-text-soft)}.input-group--checkbox input[type="checkbox"]{margin-top:4px;min-width:16px;min-height:16px}.contact-subscribe{margin-bottom:var(--space-4)}.contact-form-footer{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border-subtle);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)}.contact-form-note{font-size:11px;color:var(--color-muted);max-width:30rem}.contact-form-note a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;color:var(--color-text)}.contact-sidebar{display:flex;flex-direction:column;gap:var(--space-6)}.contact-card-body{display:flex;flex-direction:column;gap:var(--space-4)}.contact-location-block,.contact-hours-block{padding-bottom:var(--space-2)}.contact-heading-sm{font-family:var(--font-sans);font-size:12px;text-transform:uppercase;letter-spacing:0.16em;color:var(--color-muted);margin-bottom:var(--space-2)}.contact-hours-list{display:flex;flex-direction:column;gap:var(--space-2);font-size:14px;color:var(--color-text-soft)}.contact-hours-row{display:flex;justify-content:space-between;gap:var(--space-4)}.contact-hours-row dt{font-weight:500;color:var(--color-text)}.contact-hours-row dd{margin:0;color:var(--color-text-soft)}.contact-hours-note{margin-top:var(--space-3);font-size:12px;color:var(--color-muted)}.contact-list{display:flex;flex-direction:column;gap:var(--space-3);font-size:13px}.contact-list li{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-subtle);background-color:rgba(255,255,255,0.9)}.contact-label{font-size:11px;text-transform:uppercase;letter-spacing:0.16em;color:var(--color-muted)}.contact-value{color:var(--color-text-soft)}@media (max-width:1040px){.contact-layout-inner{grid-template-columns:minmax(0,1.6fr) minmax(0,1.2fr);gap:var(--space-12)}}@media (max-width:900px){.contact-layout-inner{grid-template-columns:minmax(0,1fr);gap:var(--space-10)}.contact-sidebar{order:-1}.contact-form{padding:var(--space-8) var(--space-7) var(--space-10)}.contact-form-grid,.contact-preferences-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.contact-form-footer{flex-direction:column;align-items:flex-start}.contact-form-note{max-width:100%}}