.home-gallery { padding: 125px 0 132px; background: var(--cream); overflow: hidden; }.home-gallery-heading { display: grid; grid-template-columns: 1fr .76fr; gap: 80px; align-items: end; margin-bottom: 53px; }.home-gallery-heading h2, .home-faq h2, .home-guidance h2 { margin: 17px 0 0; font-family: var(--display); font-size: clamp(43px, 4.5vw, 70px); font-weight: 400; line-height: .98; letter-spacing: -.055em; }.home-gallery-heading > p { max-width: 330px; margin: 0 0 4px; color: rgba(24,54,47,.7); font-size: 14px; line-height: 1.6; }
.home-gallery-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: stretch; }.gallery-tile { position: relative; min-width: 0; height: 465px; margin: 0; overflow: hidden; background: var(--paper); }.gallery-tile img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }.gallery-tile:hover img { transform: scale(1.035); }.gallery-tile--one img { object-position: 70% center; filter: saturate(.75); }.gallery-tile--two img { object-position: center 62%; }.gallery-tile--three img { object-position: 32% 58%; }.gallery-tile figcaption { position: absolute; right: 0; bottom: 0; left: 0; display: flex; gap: 12px; align-items: center; padding: 13px 15px; background: rgba(24,54,47,.86); color: var(--paper); font-family: var(--mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }.gallery-tile figcaption span:first-child { opacity: .65; }
.home-faq { padding: 122px 0; background: var(--ink); color: var(--paper); }.home-faq-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: 110px; }.home-faq-copy > p:not(.eyebrow) { max-width: 310px; margin: 25px 0 31px; color: rgba(245,241,233,.72); font-size: 13px; line-height: 1.6; }.home-faq-copy .text-link { color: var(--paper); }.home-faq-list { border-top: 1px solid rgba(245,241,233,.3); }.home-faq-list details { border-bottom: 1px solid rgba(245,241,233,.3); }.home-faq-list summary { display: flex; justify-content: space-between; gap: 25px; padding: 20px 0; list-style: none; cursor: pointer; font-family: var(--display); font-size: 25px; letter-spacing: -.04em; }.home-faq-list summary::-webkit-details-marker { display: none; }.home-faq-list summary i { font-family: var(--body); font-size: 17px; font-style: normal; transition: transform .2s ease; }.home-faq-list details[open] summary i { transform: rotate(45deg); }.home-faq-list p { max-width: 560px; margin: -2px 0 22px; color: rgba(245,241,233,.72); font-size: 13px; line-height: 1.65; }
.home-guidance { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; padding-block: 112px; }.home-guidance > div { display: flex; flex-direction: column; align-items: flex-start; }.home-guidance h2 { max-width: 730px; margin-top: 0; }.home-guidance .button { margin-top: 33px; }
@media (max-width: 780px) { .home-gallery { padding-block: 78px; }.home-gallery-heading { grid-template-columns: 1fr; gap: 22px; margin-bottom: 35px; }.home-gallery-heading h2, .home-faq h2, .home-guidance h2 { font-size: 45px; }.home-gallery-heading > p { font-size: 13px; }.home-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; width: min(100% - 40px, 600px); }.gallery-tile { height: 155px; }.gallery-tile figcaption { padding: 8px 7px; font-size: 6px; gap: 4px; }.home-faq { padding-block: 76px; }.home-faq-layout { grid-template-columns: 1fr; gap: 40px; }.home-faq-list summary { font-size: 22px; }.home-faq-list p { font-size: 12px; }.home-guidance { grid-template-columns: 1fr; gap: 26px; padding-block: 78px; }.home-guidance h2 { font-size: 47px; } }
