.perspective { --c-muted: #656174; --c-line: #d2d0dd; }
.perspective button, .perspective input, .perspective select, .perspective textarea { font: inherit; }
.perspective button, .perspective input, .perspective select, .perspective textarea, .perspective summary { -webkit-tap-highlight-color: transparent; }
.perspective :is(button, input, select, textarea, summary):focus-visible { outline: 3px solid #6541b4; outline-offset: 5px; }
.perspective [id] { scroll-margin-top: 126px; }
html { scrollbar-gutter: stable; }
html.has-gallery { overflow: hidden; }
.c-header { position: sticky; top: 0; z-index: 40; background: #f0f0f7ed; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border-bottom: 1px solid #d2d0dd70; }
.c-main-nav a { position: relative; }
.c-main-nav a::after { content: ''; position: absolute; left: 0; right: 0; bottom: 3px; height: 2px; background: #867399; transform: scaleX(0); transform-origin: left; transition: transform 180ms ease; }
.c-main-nav a[aria-current="location"]::after { transform: scaleX(1); }
.c-mobile-menu { display: none; }
.c-image-open { position: absolute; right: 20px; top: 20px; z-index: 2; min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 8px 13px; color: #17171c !important; background: #f0f0f7ed; border: 1px solid #ffffff80; border-radius: 100px; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); font-size: 11px; transition: background 180ms ease, transform 180ms ease; }
.c-image-open > span:last-child { font-size: 25px; line-height: 1; }
.c-image-open:hover { background: #dbd3ff; transform: translateY(-2px); }
.c-hero > .c-image-open { top: 33px; right: 34px; }
.c-gallery { border: 0; padding: 0; margin: auto; width: min(1380px, calc(100vw - 48px)); max-width: none; max-height: calc(100dvh - 48px); color: #f0f0f7; background: transparent; overflow: visible; }
.c-gallery::backdrop { background: #12121bd9; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.c-gallery-shell { display: flex; flex-direction: column; padding: 24px; border: 1px solid #575263; border-radius: 24px; background: #24232f; max-height: calc(100dvh - 48px); box-shadow: 0 20px 80px #0005; }
.c-gallery-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-bottom: 20px; flex-shrink: 0; }
.c-gallery-eyebrow { color: #c4b5df; font-size: 9px; letter-spacing: .09em; margin-bottom: 7px !important; }
.c-gallery h2 { font-size: 28px; font-weight: 450; letter-spacing: -.035em; line-height: 1.2; }
.c-gallery button { color: inherit; border: 1px solid #8d809f; cursor: pointer; min-width: 44px; min-height: 44px; background: transparent; border-radius: 50%; }
.c-gallery button:hover { background: #544762; }
.c-gallery button:focus-visible { outline-color: #e1d2ff; }
.c-gallery-close { font-size: 31px !important; flex-shrink: 0; line-height: 1; }
.c-gallery-stage { position: relative; min-height: 0; height: min(64dvh, 760px); border-radius: 12px; overflow: hidden; background: #17171c; }
.c-gallery-stage img { width: 100%; height: 100%; object-fit: contain; }
.c-gallery-arrow { position: absolute; top: 50%; transform: translateY(-50%); background: #24232fed !important; font-size: 24px !important; }
.c-gallery-back { left: 15px; }
.c-gallery-forward { right: 15px; }
.c-gallery-footer { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding-top: 19px; flex-shrink: 0; }
#gallery-caption { font-size: 11px; color: #ece7f5; line-height: 1.5; }
.c-gallery-notice { color: #bfb7ce; font-size: 10px; line-height: 1.6; margin-top: 5px !important; }
.c-gallery-controls { display: flex; align-items: center; gap: 22px; }
#gallery-count { font-size: 11px; white-space: nowrap; color: #d9cbee; }
.c-gallery-controls nav { display: flex; gap: 7px; }
.c-gallery-controls button { font-size: 11px; }
.c-gallery-controls button[aria-pressed="true"] { color: #211b2b; background: #ddd2f7; border-color: #ddd2f7; }
.c-hero-description { max-width: 530px; margin-top: 27px !important; font-size: clamp(14px, 1.15vw, 18px); line-height: 1.6; text-shadow: 0 1px 10px #1c2838; }
.c-hero-shade { background: linear-gradient(180deg, rgba(8,16,34,.58), transparent 74%, rgba(8,13,20,.3)), linear-gradient(90deg, rgba(8,16,34,.2), transparent 75%); }
.c-header-link-text { max-width: none; }
.c-main-nav { gap: 30px; }
.c-space-copy > p { font-size: 15px; line-height: 1.75; max-width: 380px; }
.c-text-link { font-size: 13px; }
.c-section, .c-space { max-width: 1820px; margin: auto; padding: 110px 68px; }
.c-section h2, .c-panel h2 { font-size: clamp(45px,4.7vw,82px); line-height: 1.06; font-weight: 450; letter-spacing: -.06em; }
.c-section h2 > span { color: var(--c-muted); }
.c-section h3, .c-panel h3 { font-weight: 450; letter-spacing: -.035em; }
.c-section-intro { max-width: 520px; margin-top: 26px !important; font-size: 16px; line-height: 1.75; color: #595566; }
.c-panel { max-width: 1768px; margin: 0 26px; padding: 68px 44px; border-radius: 34px; }
.c-principles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 50px; margin-top: 65px; }
.c-principles article { border-top: 1px solid var(--c-line); padding-top: 24px; }
.c-principle-number { display: block; font-size: 10px; letter-spacing: .07em; color: var(--c-muted); }
.c-principles h3 { margin-top: 30px; font-size: 25px; line-height: 1.2; }
.c-principles p { font-size: 14px; line-height: 1.75; color: #595566; margin-top: 15px; max-width: 350px; }
.c-directions { display: grid; grid-template-columns: 43% 1fr; gap: 7%; color: #f0f0f7; background: #24232f; }
.c-directions h2 > span { color: #c1b5ea; }
.c-direction-intro { position: relative; overflow: hidden; }
.c-direction-intro > .c-section-label { padding-top: 0; margin-bottom: 42px; color: #d5cdee; }
.c-direction-intro .c-section-intro { color: #d1ccd9; font-size: 15px; max-width: 345px; }
.c-round-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 58px; font-size: 13px; margin-top: 30px; }
.c-round-link > span { display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid currentColor; border-radius: 50%; font-size: 24px; transition: transform 200ms ease; }
.c-round-link:hover > span { transform: rotate(45deg); }
.c-directions .c-round-link > span { color: #ded5ff; }
.c-large-orbit { display: block; width: 104px; height: 104px; border: 1px solid #696077; border-radius: 50%; margin-top: 58px; position: relative; }
.c-large-orbit::before, .c-large-orbit::after { content: ''; position: absolute; inset: 12px; border: 1px solid #696077; border-radius: 50%; }
.c-large-orbit::after { inset: 26px; }
.c-direction-list { align-self: center; }
.c-direction-list > a { display: grid; grid-template-columns: 24px 1fr 40px; gap: 23px; align-items: start; border-top: 1px solid #585361; padding: 32px 0; transition: background 180ms ease; }
.c-direction-list > a:last-child { border-bottom: 1px solid #585361; }
.c-direction-list > a:hover { background: #2e2b3d; }
.c-list-number { color: #beb2d8; font-size: 11px; padding-top: 7px; }
.c-direction-list h3 { font-size: clamp(25px,2.4vw,40px); line-height: 1.15; }
.c-direction-list p { max-width: 350px; color: #c4bfce; margin-top: 13px; font-size: 14px; line-height: 1.6; }
.c-list-arrow { font-size: 28px; padding-top: 1px; justify-self: end; color: #d5c9fc; }
.c-editorial-heading { display: grid; grid-template-columns: 36% 64%; }
.c-steps { padding: 0; list-style: none; display: grid; grid-template-columns: repeat(4,1fr); gap: 32px; margin: 60px 0 0; }
.c-steps li { display: flex; flex-direction: column; border-top: 1px solid #b7b2c7; padding-top: 24px; }
.c-step-number { display: flex; justify-content: space-between; align-items: center; font-size: 44px; font-weight: 350; letter-spacing: -.06em; color: #817691; }
.c-step-number > span { font-size: 25px; }
.c-steps h3 { font-size: 25px; line-height: 1.15; margin-top: 30px; min-height: 58px; }
.c-steps p { font-size: 14px; line-height: 1.75; margin-top: 18px; color: #595566; }
.c-step-result { display: block; padding-top: 27px; margin-top: auto; font-size: 11px; color: #5b526f; line-height: 1.5; }
.c-details { display: grid; grid-template-columns: 51% 1fr; gap: 8%; padding-top: 0; }
.c-detail-image { position: relative; min-height: 650px; overflow: hidden; border-radius: 28px; background: #70604d; }
.c-detail-image img { width: 100%; height: 100%; object-fit: cover; object-position: 42% center; }
.c-detail-image figcaption { position: absolute; left: 20px; bottom: 17px; padding: 6px 9px; color: #fff; background: #202026d9; font-size: 9px; border-radius: 5px; }
.c-detail-copy { padding-top: 25px; }
.c-detail-copy .c-section-label { margin-bottom: 47px; }
.c-detail-copy h2 { font-size: clamp(43px,4.1vw,65px); }
.c-detail-copy .c-section-intro { font-size: 15px; }
.c-detail-points { margin: 40px 0 0; }
.c-detail-points > div { display: grid; grid-template-columns: 27% 1fr; gap: 18px; border-top: 1px solid var(--c-line); padding: 23px 0; }
.c-detail-points dt { font-size: 16px; letter-spacing: -.025em; }
.c-detail-points dd { margin: 0; font-size: 13px; line-height: 1.75; color: #595566; }
.c-faq { display: grid; grid-template-columns: 36% 1fr; gap: 7%; border-top: 1px solid var(--c-line); }
.c-faq-heading .c-section-label { margin-bottom: 39px; }
.c-faq h2 { font-size: clamp(43px,4.1vw,70px); }
.c-faq-list { margin-top: 10px; }
.c-faq details { border-top: 1px solid #bbb6c9; }
.c-faq details:last-child { border-bottom: 1px solid #bbb6c9; }
.c-faq summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 25px 0; font-size: 19px; line-height: 1.35; letter-spacing: -.025em; cursor: pointer; }
.c-faq summary::-webkit-details-marker { display: none; }
.c-faq summary > span { width: 24px; height: 24px; flex-shrink: 0; position: relative; }
.c-faq summary > span::before, .c-faq summary > span::after { content: ''; position: absolute; width: 16px; height: 1px; background: currentColor; top: 12px; left: 4px; }
.c-faq summary > span::after { transform: rotate(90deg); transition: transform 180ms ease; }
.c-faq details[open] summary > span::after { transform: rotate(0deg); }
.c-faq details > div { padding: 0 44px 28px 0; font-size: 14px; line-height: 1.8; color: #595566; }
.c-contact { display: grid; grid-template-columns: 45% 1fr; gap: 8%; background: #dfd9f2; margin-bottom: 70px; padding-top: 70px; padding-bottom: 70px; }
.c-contact-intro { display: flex; flex-direction: column; }
.c-contact .c-section-label { margin-bottom: 49px; padding-top: 0; }
.c-contact h2 { font-size: clamp(70px,7.1vw,112px); line-height: .99; }
.c-contact h2 span { color: #706185; }
.c-contact-intro > p:not(.c-section-label) { font-size: 17px; line-height: 1.7; margin-top: 31px; color: #4e465e; }
.c-contact-footnote { display: flex; align-items: flex-start; gap: 15px; color: #5c536b; font-size: 12px; line-height: 1.7; margin-top: auto; padding-top: 55px; }
.c-contact-footnote .c-orbit { flex-shrink: 0; margin-top: 3px; }
.c-form-preview { font-size: 11px; line-height: 1.5; border-bottom: 1px solid #aea1c1; padding-bottom: 16px; margin-bottom: 26px !important; color: #5c4c70; }
.c-field { display: flex; flex-direction: column; gap: 9px; margin-bottom: 25px; }
.c-field label, .c-contact-method legend { font-size: 13px; line-height: 1.5; font-weight: 450; }
.c-field input, .c-field textarea, .c-field select { width: 100%; min-width: 0; min-height: 52px; border: 1px solid #b5a8c8; background: #f5f1fb99; border-radius: 10px; color: #21192d; padding: 13px 15px; font-size: 15px; line-height: 1.5; }
.c-field textarea { resize: vertical; min-height: 106px; }
.c-field select { padding-right: 20px; }
.c-field :is(input,textarea)::placeholder { color: #776b86; opacity: 1; }
.c-field-hint { font-size: 11px; line-height: 1.5; color: #60556f; }
.c-message-count { text-align: right; }
.c-optional { color: #60556f; font-size: 11px; margin-left: 5px; font-weight: 400; }
.c-field-error { display: block; color: #922336; font-size: 12px; line-height: 1.5; }
.c-field-error:empty { display: none; }
.c-field [aria-invalid="true"] { border: 2px solid #922336; padding: 12px 14px; }
.c-contact-method { border: 0; padding: 0; margin: 0 0 24px; min-width: 0; }
.c-contact-method legend { margin-bottom: 11px; padding: 0; }
.c-contact-method > div { display: flex; gap: 10px; }
.c-contact-method label { position: relative; min-height: 44px; display: inline-flex; }
.c-contact-method input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.c-contact-method label > span { display: inline-flex; align-items: center; justify-content: center; border: 1px solid #b2a6c2; border-radius: 100px; padding: 10px 19px; font-size: 12px; pointer-events: none; }
.c-contact-method input:checked + span { color: #fff; background: #292333; border-color: #292333; }
.c-contact-method input:focus + span { outline: 3px solid #6541b4; outline-offset: 4px; }
.c-contact-method input:focus-visible { outline: 0; }
.c-form-trap { position: absolute; width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap; }
.c-consent { display: flex; align-items: flex-start; gap: 12px; min-height: 44px; font-size: 12px; line-height: 1.65; cursor: pointer; padding: 4px 0; margin: 0 0 13px; }
.c-consent input { margin: 2px 0 0; width: 20px; height: 20px; flex-shrink: 0; accent-color: #292333; }
.c-consent span { max-width: 370px; }
.c-submit { display: flex; align-items: center; justify-content: space-between; gap: 18px; width: 100%; min-height: 65px; color: #fff; background: #24232f; border: 1px solid #24232f; border-radius: 100px; padding: 10px 11px 10px 26px; font-size: 15px; cursor: pointer; margin-top: 21px; transition: background 180ms ease; }
.c-submit:hover { background: #3b324b; }
.c-submit:disabled { opacity: .62; cursor: wait; }
.c-submit-arrow { display: grid; place-items: center; height: 43px; width: 43px; flex-shrink: 0; border-radius: 50%; color: #24232f; background: #ddd4f3; font-size: 26px; }
.c-form-note { color: #60556f; font-size: 10px; line-height: 1.6; margin-top: 15px !important; }
.c-form-status { font-size: 14px; line-height: 1.7; border-radius: 12px; margin-top: 20px; }
.c-form-status:empty { display: none; }
.c-form-status:not(:empty) { background: #f7f3ff; padding: 18px; border: 1px solid #a497b7; }
.c-form-status:focus { outline: 3px solid #6541b4; outline-offset: 4px; }
.c-footer-expanded { display: block; padding: 35px 0 29px; }
.c-footer-top { display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.c-footer-top .c-logo { width: 171px; }
.c-footer-top > p { font-size: 14px; color: #62586f; }
.c-footer .c-footer-nav a { padding: 0 13px; border-radius: 8px; }
.c-footer-bottom { display: flex; align-items: flex-end; justify-content: space-between; gap: 25px; margin-top: 39px; color: #696171; font-size: 11px; line-height: 1.7; }
.c-footer-bottom p:last-child { text-align: right; }
@media(min-width:1820px) { .c-panel { margin-left: auto; margin-right: auto; } }
@media(max-width:1100px) {
  .c-main-nav { gap: 20px; }
  .c-section, .c-space { padding: 80px 42px; }
  .c-panel { margin-left: 20px; margin-right: 20px; padding: 55px 30px; }
  .c-principles { gap: 28px; }
  .c-principles h3 { font-size: 22px; }
  .c-directions { grid-template-columns: 42% 1fr; gap: 7%; }
  .c-direction-list > a { gap: 16px; }
  .c-steps { gap: 22px; }
  .c-steps h3 { font-size: 21px; }
  .c-steps p { font-size: 13px; }
  .c-details { padding-top: 0; gap: 6%; }
  .c-detail-image { min-height: 620px; }
  .c-detail-points > div { grid-template-columns: 1fr; gap: 8px; padding: 18px 0; }
  .c-detail-copy .c-section-label { margin-bottom: 30px; }
  .c-detail-copy { padding-top: 0; }
  .c-contact { grid-template-columns: 42% 1fr; gap: 7%; margin-bottom: 55px; }
  .c-contact h2 { font-size: 78px; }
  .c-contact-intro > p:not(.c-section-label) { font-size: 15px; }
  .c-footer-top > p { display: none; }
}
@media(max-width:760px) {
  .perspective [id] { scroll-margin-top: 100px; }
  .c-header { gap: 10px; }
  .c-header-link { padding: 0; border: 0; min-width: 44px; min-height: 44px; justify-content: center; }
  .c-header-link > span[aria-hidden="true"] { width: 38px; height: 38px; }
  .c-header-link .c-header-link-text { display: none; }
  .c-mobile-menu { display: block; margin-left: auto; }
  .c-mobile-menu summary { list-style: none; display: flex; align-items: center; gap: 9px; min-height: 44px; min-width: 70px; justify-content: center; cursor: pointer; font-size: 11px; }
  .c-mobile-menu summary::-webkit-details-marker { display: none; }
  .c-menu-mark { position: relative; width: 16px; height: 16px; }
  .c-menu-mark::before, .c-menu-mark::after { content: ''; position: absolute; left: 0; width: 16px; height: 1px; background: currentColor; top: 5px; transition: transform 180ms ease; }
  .c-menu-mark::after { top: 11px; }
  .c-mobile-menu[open] .c-menu-mark::before { transform: translateY(3px) rotate(45deg); }
  .c-mobile-menu[open] .c-menu-mark::after { transform: translateY(-3px) rotate(-45deg); }
  .c-mobile-menu nav { position: absolute; top: calc(100% - 1px); left: 17px; right: 17px; padding: 12px 23px; border: 1px solid #cbc4d7; border-radius: 19px; background: #f0f0f7; box-shadow: 0 14px 35px #24232f18; }
  .c-mobile-menu nav a { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 57px; border-bottom: 1px solid #d8d1e2; font-size: 16px; }
  .c-mobile-menu nav a:last-child { border: 0; }
  .c-mobile-menu nav a > span { font-size: 11px; color: #746381; }
  .c-mobile-menu nav a[aria-current="location"] { color: #6b468b; }
  .c-image-open, .c-hero > .c-image-open { top: 15px; right: 15px; padding: 8px; }
  .c-image-open-label { display: none; }
  .c-gallery { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); }
  .c-gallery-shell { padding: 16px; border-radius: 20px; max-height: calc(100dvh - 20px); }
  .c-gallery-heading { gap: 12px; padding-bottom: 18px; }
  .c-gallery-eyebrow { font-size: 8px; }
  .c-gallery h2 { font-size: 23px; }
  .c-gallery-stage { height: 54dvh; }
  .c-gallery-back { left: 7px; }
  .c-gallery-forward { right: 7px; }
  .c-gallery-footer { align-items: flex-start; flex-direction: column; gap: 14px; padding-top: 17px; }
  #gallery-caption { font-size: 10px; }
  .c-gallery-notice { font-size: 9px; }
  .c-gallery-controls { width: 100%; justify-content: space-between; }
  .c-header-link-text { max-width: 75px; }
  .c-header-link { gap: 13px; }
  .c-hero-description { max-width: 320px; font-size: 13px; line-height: 1.6; margin-top: 22px !important; }
  .c-eyebrow { font-size: 8px; letter-spacing: .025em; }
  .c-section, .c-space { padding: 65px 25px; }
  .c-section h2, .c-panel h2 { font-size: clamp(39px,8vw,56px); }
  .c-space-copy > p { font-size: 14px; }
  .c-principles { display: block; margin-top: 40px; }
  .c-principles article { display: grid; grid-template-columns: 66px 1fr; column-gap: 16px; padding: 24px 0; }
  .c-principle-number { padding-top: 4px; font-size: 8px; }
  .c-principles h3 { margin: 0; font-size: 24px; }
  .c-principles p { grid-column: 2; font-size: 13px; margin-top: 11px; }
  .c-panel { margin-left: 12px; margin-right: 12px; padding: 39px 23px; border-radius: 27px; }
  .c-directions { grid-template-columns: 1fr; gap: 35px; }
  .c-direction-intro > .c-section-label { margin-bottom: 29px; }
  .c-section-intro { font-size: 14px; margin-top: 23px !important; }
  .c-direction-intro .c-section-intro { font-size: 14px; }
  .c-large-orbit { display: none; }
  .c-direction-list > a { grid-template-columns: 18px 1fr 25px; gap: 13px; padding: 26px 0; }
  .c-list-number { font-size: 9px; padding-top: 5px; }
  .c-direction-list h3 { font-size: 28px; }
  .c-direction-list p { font-size: 13px; margin-top: 12px; }
  .c-list-arrow { font-size: 24px; }
  .c-round-link { font-size: 12px; gap: 26px; margin-top: 21px; }
  .c-editorial-heading { display: block; }
  .c-editorial-heading .c-section-label { margin-bottom: 28px; }
  .c-steps { grid-template-columns: 1fr; gap: 0; margin-top: 34px; }
  .c-steps li { display: grid; grid-template-columns: 55px 1fr; column-gap: 20px; padding: 26px 0; }
  .c-step-number { display: block; grid-row: 1 / 4; font-size: 36px; line-height: 1; }
  .c-step-number > span { display: none; }
  .c-steps h3 { min-height: 0; font-size: 25px; margin-top: 0; }
  .c-steps p { margin-top: 14px; }
  .c-step-result { grid-column: 2; padding-top: 17px; font-size: 10px; }
  .c-details { display: flex; flex-direction: column; gap: 35px; padding-top: 0; }
  .c-detail-image { min-height: 0; height: 435px; border-radius: 24px; }
  .c-detail-image img { object-position: 32% center; }
  .c-detail-image figcaption { left: 14px; bottom: 15px; font-size: 8px; }
  .c-detail-copy .c-section-label { margin-bottom: 28px; }
  .c-detail-copy h2 { font-size: 42px; }
  .c-detail-copy .c-section-intro { font-size: 14px; }
  .c-detail-points { margin-top: 28px; }
  .c-detail-points > div { grid-template-columns: 27% 1fr; gap: 17px; padding: 21px 0; }
  .c-detail-points dt { font-size: 15px; }
  .c-detail-points dd { font-size: 13px; }
  .c-faq { grid-template-columns: 1fr; gap: 24px; }
  .c-faq-heading .c-section-label { margin-bottom: 28px; }
  .c-faq summary { font-size: 18px; padding: 24px 0; gap: 20px; }
  .c-faq details > div { padding: 0 12px 25px 0; font-size: 13px; }
  .c-contact { grid-template-columns: 1fr; gap: 36px; margin-bottom: 40px; padding-top: 39px; padding-bottom: 39px; }
  .c-contact .c-section-label { margin-bottom: 32px; }
  .c-contact h2 { font-size: clamp(64px,14vw,88px); }
  .c-contact-intro > p:not(.c-section-label) { font-size: 15px; margin-top: 24px; }
  .c-contact-footnote { padding-top: 26px; font-size: 11px; }
  .c-form-preview { font-size: 10px; }
  .c-field input, .c-field select, .c-field textarea { font-size: 16px; }
  .c-contact-method label > span { padding: 10px 17px; }
  .c-optional { display: inline-block; }
  .c-submit { padding-left: 20px; font-size: 14px; }
  .c-footer-expanded { padding: 26px 0; }
  .c-footer-top { flex-direction: column; align-items: flex-start; gap: 24px; }
  .c-footer-top .c-logo { width: 161px; }
  .c-footer .c-footer-nav { margin-left: -12px; gap: 7px; flex-wrap: wrap; }
  .c-footer-bottom { flex-direction: column; align-items: flex-start; gap: 15px; margin-top: 22px; font-size: 10px; }
  .c-footer-bottom p:last-child { text-align: left; }
}
@media(max-height:500px) { .c-gallery-shell { padding: 12px; } .c-gallery-heading { padding-bottom: 10px; } .c-gallery-eyebrow, .c-gallery-notice { display: none; } .c-gallery h2 { font-size: 22px; } .c-gallery-stage { height: 45dvh; } .c-gallery-footer { flex-direction: row; align-items: center; padding-top: 10px; } .c-gallery-controls { width: auto; gap: 12px; } }
@media(prefers-reduced-motion:reduce) { .perspective *, .perspective *::before, .perspective *::after { transition: none !important; scroll-behavior: auto !important; } }
