 @media only screen and (min-width: 0rem) {#hero, #ribbon, #cta {--pitch: clamp(1.75rem, 4.5vw, 4rem);}.wrap {width: 100%;max-width: 80rem;margin: 0 auto;padding: 0 1.25rem;position: relative;}.horizon {display: block;width: 6.5rem;height: 3px;border-radius: 2px;background-image: linear-gradient(90deg, var(--sky) 0%, rgba(38, 170, 225, 0) 100%);}.horizon-top {margin: 0 auto 1.5rem;}.label {display: block;margin: 0 0 0.9rem;font-family: var(--utilFont);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.22em;text-transform: uppercase;color: var(--skyInk);}.label-light {color: var(--skyLight);}.lead-block {display: flex;flex-direction: column;align-items: center;text-align: center;margin-bottom: 2.25rem;}.hd {margin: 0;font-family: var(--headingFont);font-weight: 600;font-size: clamp(2.05rem, 6.6vw, 3.4rem);line-height: 1.08;letter-spacing: -0.022em;color: var(--ink);max-width: 22ch;}.hd-light {color: var(--white);}.glow {display: block;font-style: italic;font-weight: 400;color: var(--skyInk);}.glow-light {display: block;font-style: italic;font-weight: 400;color: var(--skyLight);}.read {margin: 1.35rem 0 0;max-width: 42rem;font-size: 1.06rem;line-height: 1.78;color: var(--bodyTextColor);}.read-light {color: var(--bodyTextLight);}.btn {display: inline-flex;align-items: center;justify-content: center;min-height: 3.6rem;padding: 0 2.5rem;font-family: var(--bodyFont);font-weight: 700;font-size: 1.02rem;letter-spacing: 0.01em;text-align: center;text-decoration: none;color: var(--white);background-color: var(--skyInk);border: 2px solid var(--skyInk);border-radius: 100vmax;cursor: pointer;box-shadow: 0 0.75rem 1.5rem rgba(10, 99, 130, 0.28);transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;}.btn:hover {background-color: var(--sky);border-color: var(--sky);color: var(--ink);transform: translateY(-3px);box-shadow: 0 1.1rem 2rem rgba(38, 170, 225, 0.34);}.btn-line {background-color: transparent;border-color: var(--skyInk);color: var(--skyInk);box-shadow: none;}.btn-line:hover {background-color: var(--skyInk);border-color: var(--skyInk);color: var(--white);}.reveal {opacity: 1;}html.js .reveal {opacity: 0;transform: translateY(1.6rem);transition: opacity 0.7s ease, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);}html.js .reveal.is-in {opacity: 1;transform: none;}}@media only screen and (min-width: 48rem) {.wrap {padding: 0 2rem;}.lead-block {margin-bottom: 3rem;}}@media only screen and (prefers-reduced-motion: reduce) {html.js .reveal {opacity: 1;transform: none;transition: none;}.btn:hover {transform: none;}}@media only screen and (min-width: 0rem) {#hero {position: relative;width: 100%;overflow: hidden;isolation: isolate;background-color: var(--ink);padding: 10rem 0 calc(3.5rem + var(--pitch));clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--pitch)), 0 100%);}#hero .hero-img {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;object-position: 50% 40%;z-index: -2;}#hero .hero-wash {position: absolute;inset: 0;z-index: -1;display: block;background-image: linear-gradient(172deg, rgba(8, 26, 36, 0.62) 0%, rgba(9, 44, 60, 0.6) 38%, rgba(8, 20, 27, 0.92) 100%);}#hero .hero-wrap {display: flex;flex-direction: column;align-items: center;text-align: center;padding-top: 1rem;}#hero h1 {margin: 0 0 1.5rem;font-family: var(--headingFont);font-weight: 600;font-size: clamp(2.5rem, 9vw, 5.1rem);line-height: 1.01;letter-spacing: -0.032em;color: var(--white);max-width: 15ch;}#hero .hero-turn {display: block;font-style: italic;font-weight: 400;color: var(--skyLight);}#hero .hero-read {margin: 0 auto 2.5rem;max-width: 34rem;font-size: 1.1rem;line-height: 1.78;color: rgba(238, 244, 247, 0.86);}}@media only screen and (min-width: 48rem) {#hero {padding-top: 11rem;}}@media only screen and (min-width: 64rem) {#hero {padding-top: 13.5rem;padding-bottom: calc(7rem + var(--pitch));}}@media only screen and (min-width: 0rem) {#ribbon {position: relative;z-index: 2;margin-top: calc(var(--pitch) * -1);padding: calc(var(--pitch) + 1.5rem) 0 1.75rem;background-color: var(--skyInk);clip-path: polygon(0 var(--pitch), 100% 0, 100% 100%, 0 100%);}#ribbon .ribbon-run {list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap;justify-content: center;gap: 2rem 4rem;}#ribbon .ribbon-run li {display: flex;flex-direction: column;align-items: center;text-align: center;gap: 0.35rem;}#ribbon .rib-num {font-family: var(--headingFont);font-size: 2.35rem;font-weight: 600;line-height: 1;letter-spacing: -0.03em;color: var(--white);}#ribbon .rib-text {font-family: var(--utilFont);font-size: 0.76rem;font-weight: 700;letter-spacing: 0.16em;text-transform: uppercase;line-height: 1.5;color: rgba(255, 255, 255, 0.78);max-width: 16ch;}}@media only screen and (min-width: 0rem) {#systems {background-color: var(--white);padding: 3.5rem 0;}#systems .sys-set {list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: 1fr;gap: 1rem;}#systems .sys-set li {position: relative;overflow: hidden;border-radius: var(--radius);background-color: var(--ink);box-shadow: var(--shadowSmall);}#systems .sys-set img {width: 100%;aspect-ratio: 4 / 3;object-fit: cover;display: block;transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);}#systems .sys-set li:hover img {transform: scale(1.05);}#systems .sys-veil {position: absolute;inset: 0;display: block;background-image: linear-gradient(to top, rgba(8, 20, 27, 0.92) 0%, rgba(8, 20, 27, 0.42) 42%, rgba(8, 20, 27, 0.06) 100%);}#systems .sys-body {position: absolute;left: 0;right: 0;bottom: 0;padding: 1.75rem 1.5rem;display: flex;flex-direction: column;align-items: center;text-align: center;}#systems .sys-tag {font-family: var(--utilFont);font-size: 0.7rem;font-weight: 700;letter-spacing: 0.2em;text-transform: uppercase;color: var(--skyLight);margin-bottom: 0.5rem;}#systems h3 {margin: 0 0 0.6rem;font-family: var(--headingFont);font-weight: 600;font-size: clamp(1.5rem, 4.5vw, 2rem);line-height: 1.1;letter-spacing: -0.025em;color: var(--white);}#systems .sys-note {margin: 0;max-width: 32ch;font-size: 0.98rem;line-height: 1.65;color: rgba(238, 244, 247, 0.82);}}@media only screen and (min-width: 48rem) {#systems {padding: 4.75rem 0;}#systems .sys-set {grid-template-columns: repeat(2, 1fr);gap: 1.25rem;}#systems .sys-body {padding: 2.25rem 2rem;}}@media only screen and (prefers-reduced-motion: reduce) {#systems .sys-set li:hover img {transform: none;}}@media only screen and (min-width: 0rem) {#support {background-color: var(--mist);padding: 3rem 0;}#support .sup-set {list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: 1fr;gap: 1.5rem;}#support .sup-set li {display: flex;flex-direction: column;align-items: center;text-align: center;}#support .sup-mark {width: 3.25rem;height: 3.25rem;display: flex;align-items: center;justify-content: center;margin-bottom: 1rem;color: var(--skyInk);background-color: var(--white);border-radius: 100vmax;box-shadow: var(--shadowSmall);}#support .sup-mark svg {width: 1.5rem;height: 1.5rem;display: block;}#support h3 {margin: 0 0 0.45rem;font-family: var(--headingFont);font-weight: 600;font-size: 1.2rem;line-height: 1.2;letter-spacing: -0.02em;color: var(--ink);}#support p {margin: 0;max-width: 26ch;font-size: 0.96rem;line-height: 1.7;color: var(--bodyTextColor);}}@media only screen and (min-width: 48rem) {#support {padding: 3.75rem 0;}#support .sup-set {grid-template-columns: repeat(2, 1fr);gap: 2.25rem;}}@media only screen and (min-width: 64rem) {#support .sup-set {grid-template-columns: repeat(4, 1fr);}}@media only screen and (min-width: 0rem) {#offer {position: relative;overflow: hidden;background-color: var(--ink);padding: 3.5rem 0;}#offer::before {content: "";position: absolute;top: -16rem;left: 50%;transform: translateX(-50%);width: 38rem;height: 38rem;border-radius: 50%;background-image: radial-gradient(circle, rgba(38, 170, 225, 0.16) 0%, rgba(38, 170, 225, 0) 68%);pointer-events: none;}#offer .offer-set {list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: 1fr;gap: 2.25rem;}#offer .offer-set li {display: flex;flex-direction: column;align-items: center;text-align: center;padding: 0 0.5rem;}#offer .offer-mark {width: 3.75rem;height: 3.75rem;display: flex;align-items: center;justify-content: center;margin-bottom: 1.25rem;color: var(--skyLight);background-color: rgba(255, 255, 255, 0.06);border: 1px solid rgba(255, 255, 255, 0.16);border-radius: 100vmax;}#offer .offer-mark svg {width: 1.7rem;height: 1.7rem;display: block;}#offer h3 {margin: 0 0 0.7rem;font-family: var(--headingFont);font-weight: 600;font-size: 1.35rem;line-height: 1.2;letter-spacing: -0.02em;color: var(--white);max-width: 20ch;}#offer p {margin: 0;max-width: 28ch;font-size: 1rem;line-height: 1.75;color: var(--bodyTextLight);}}@media only screen and (min-width: 48rem) {#offer {padding: 4.75rem 0;}#offer .offer-set {grid-template-columns: repeat(3, 1fr);gap: 2.5rem;}}@media only screen and (min-width: 0rem) {#about {background-color: var(--white);padding: 3.5rem 0;}#about .about-wrap {display: grid;grid-template-columns: 1fr;gap: 2.75rem;align-items: center;}#about .about-shot {margin: 0;width: 100%;max-width: 32rem;margin-inline: auto;overflow: hidden;border-radius: var(--radiusLg);box-shadow: var(--shadow);background-color: var(--ink);}#about .about-shot img {width: 100%;aspect-ratio: 4 / 3;object-fit: cover;display: block;}#about .about-copy {display: flex;flex-direction: column;align-items: center;text-align: center;}#about .about-sign {margin: 1.85rem 0 0;font-family: var(--headingFont);font-size: 1.2rem;font-style: italic;font-weight: 400;line-height: 1.5;color: var(--skyInk);}}@media only screen and (min-width: 48rem) {#about {padding: 4.75rem 0;}}@media only screen and (min-width: 64rem) {#about .about-wrap {grid-template-columns: 1fr 1fr;gap: 4.5rem;}#about .about-shot {max-width: none;}}@media only screen and (min-width: 0rem) {#gallery {background-color: var(--mist);padding: 3.5rem 0;}#gallery .mosaic {list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(2, 1fr);gap: 0.6rem;}#gallery .mosaic li {overflow: hidden;border-radius: var(--radiusSm);background-color: var(--ink);}#gallery .mosaic img {width: 100%;height: 100%;aspect-ratio: 1 / 1;object-fit: cover;display: block;transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);}#gallery .mosaic li:hover img {transform: scale(1.06);}#gallery .gal-foot {display: flex;justify-content: center;margin-top: 2.25rem;}}@media only screen and (min-width: 48rem) {#gallery {padding: 4.75rem 0;}#gallery .mosaic {grid-template-columns: repeat(6, 1fr);grid-auto-rows: 9rem;gap: 0.85rem;}#gallery .mosaic img {aspect-ratio: auto;}#gallery .mosaic li:nth-child(1) {grid-column: span 4;grid-row: span 4;}#gallery .mosaic li:nth-child(n + 2) {grid-column: span 2;grid-row: span 2;}}@media only screen and (prefers-reduced-motion: reduce) {#gallery .mosaic li:hover img {transform: none;}}@media only screen and (min-width: 0rem) {#areas {background-color: var(--white);padding: 3.5rem 0 7rem;}#areas .area-run {list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap;justify-content: center;gap: 0.7rem;}#areas .area-run li {font-family: var(--bodyFont);font-size: 1rem;font-weight: 600;line-height: 1.2;color: var(--ink);background-color: var(--mist);border: 1px solid var(--line);border-radius: 100vmax;padding: 0.85rem 1.5rem;transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;}#areas .area-run li:hover {background-color: var(--skyPale);border-color: var(--sky);color: var(--skyInk);}}@media only screen and (min-width: 48rem) {#areas {padding: 4.75rem 0 8.5rem;}}@media only screen and (min-width: 0rem) {#cta {position: relative;width: 100%;overflow: hidden;isolation: isolate;background-color: var(--ink);margin-top: calc(var(--pitch) * -1);padding: calc(var(--pitch) + 3.5rem) 0 4rem;clip-path: polygon(0 var(--pitch), 100% 0, 100% 100%, 0 100%);}#cta .cta-img {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;z-index: -2;}#cta .cta-wash {position: absolute;inset: 0;z-index: -1;display: block;background-image: linear-gradient(176deg, rgba(8, 26, 36, 0.92) 0%, rgba(9, 44, 60, 0.88) 48%, rgba(8, 20, 27, 0.96) 100%);}#cta .cta-wrap {display: flex;flex-direction: column;align-items: center;text-align: center;}#cta h2 {margin: 0 0 1.35rem;font-family: var(--headingFont);font-weight: 600;font-size: clamp(2.15rem, 7.5vw, 3.6rem);line-height: 1.06;letter-spacing: -0.028em;color: var(--white);max-width: 18ch;}#cta .cta-turn {display: block;font-style: italic;font-weight: 400;color: var(--skyLight);}#cta .cta-read {margin: 0 auto 2.5rem;max-width: 36rem;font-size: 1.06rem;line-height: 1.78;color: rgba(238, 244, 247, 0.86);}#cta .cta-lines {display: flex;flex-direction: column;align-items: center;gap: 0.9rem;margin-top: 2rem;}#cta .cta-line {font-family: var(--utilFont);font-size: 0.95rem;font-weight: 600;letter-spacing: 0.03em;text-decoration: none;color: rgba(238, 244, 247, 0.88);border-bottom: 2px solid rgba(38, 170, 225, 0.7);padding-bottom: 0.35rem;transition: color 0.25s ease, border-color 0.25s ease;}#cta .cta-line:hover {color: var(--skyLight);border-color: var(--white);}}@media only screen and (min-width: 48rem) {#cta {padding-bottom: 5.5rem;}#cta .cta-lines {flex-direction: row;gap: 2.5rem;}}