:root{--paper:#111211;--ink:#f3f1ec;--line:#ffffff26;--orange:#ded9cf;--blue:#1a1b19;--muted:#b5b6af;--ivory:#f2f0e9}
body{background:var(--paper);color:var(--ink);scrollbar-color:#72736c #111211}
::selection{background:#e6e0d4;color:#191a17}
p{color:#babbb5}
em{color:#b9b6ac}
input,textarea{caret-color:#21221e}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#b7a989}
.skip{background:#f2f0e9;color:#191a17}
.nav a:hover,.text-link:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
.moon-hero{background:#111211}
.service-art{width:100%;aspect-ratio:3/2;background-size:cover;background-position:center;background-repeat:no-repeat}
.art-digital{background-image:url("assets/service-digital.webp")}
.art-platform{background-image:url("assets/service-platform.webp")}
.art-automation{background-image:url("assets/service-automation.webp")}
.art-custom{background-image:url("assets/service-custom.webp")}
.moon-hero .service-portals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;border:0;padding-top:32px;padding-bottom:16px}
.moon-hero .service-portals .service-portal{display:block;min-width:0;border:1px solid #ffffff1f;border-radius:8px;background:#171816;padding:0!important;overflow:hidden;transition:border-color .4s,background .4s;min-height:0}
.portal-window{overflow:hidden;aspect-ratio:3/2}
.portal-window .service-art{transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .7s}
.service-portal:hover .service-art,.service-portal:focus-visible .service-art{transform:scale(1.045);filter:brightness(1.12)}
.moon-hero .service-portal:hover{border-color:#cfc6ae66;background:#1e1f1c;color:#fff}
.portal-copy{display:grid;grid-template-columns:1fr 20px;gap:9px;padding:20px}
.portal-copy>span{font-size:17px;line-height:1.3;font-weight:400}
.portal-copy svg{width:19px;height:19px;margin:0}
.moon-hero .portal-copy p{grid-column:1/-1;font-size:11px;line-height:1.6;margin:0;color:#b8b9b1;max-width:none}
.services{padding-top:110px}
.home-overview{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.home-overview h2{font-size:52px;line-height:1.1}
.home-overview>div>p{max-width:43ch;font-size:14px;line-height:1.9;margin-top:25px}
.overview-links a{display:grid;grid-template-columns:1fr 22px;gap:8px;border-top:1px solid var(--line);padding:22px 0}
.overview-links span{font-size:18px}.overview-links svg{width:22px;height:22px}
.overview-links p{grid-column:1/-1;font-size:12px;margin:0}
.overview-links a:hover span{text-decoration:underline;text-underline-offset:5px}
@media(max-width:700px){.home-overview{grid-template-columns:1fr;gap:35px}.home-overview h2{font-size:38px}.overview-links a{padding:18px 0}}
.section-heading{align-items:end;margin-bottom:64px}
.section-heading h2{font-size:54px}
.section-heading p{font-size:14px;max-width:350px;color:#b8bab2}
.service-grid{display:block}
.service-grid>article{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:center;padding-block:65px;border-top:1px solid #ffffff21}
.service-grid>article:nth-child(even){grid-template-columns:1fr 1.15fr}
.service-grid>article:nth-child(even) .service-visual{order:2}
.service-visual{position:relative;height:auto;padding:0;background:transparent;aspect-ratio:3/2;border-radius:0;overflow:hidden}
.service-visual .service-art{height:100%;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.service-grid>article:hover .service-art{transform:scale(1.025)}
.preview-label{position:absolute;left:18px;bottom:12px;background:#121310d9;padding:3px 8px;color:#d0d0c8;font-size:9px}
.service-heading{margin:0 0 22px}
.service-heading h3{font-family:var(--display);font-size:38px;font-weight:400;line-height:1.15}
.service-heading a{width:44px;height:44px;border:1px solid #ffffff38;border-radius:50%;display:grid;place-items:center;transition:background .25s}
.service-heading a:hover{background:#ffffff0c}
.service-description>p{font-size:14px;line-height:1.85;max-width:46ch;color:#bdbeb7}
.capabilities{color:#dadbd3;font-size:11px;margin:24px 0;gap:8px 20px}
.capabilities li::before{background:#b1ab9d}
.service-grid details{border-color:#ffffff29}
.service-grid summary{font-size:12px;color:#e7e6df}
.service-grid details p{font-size:13px;line-height:1.8;color:#b9bbb2}
.ecosystem-section{background:#1b1c19;border-block:1px solid #ffffff15}
.ecosystem-section h2 em{color:#bdbbad}
.ecosystem-section .section{padding-block:105px}
.journey{gap:8px;grid-template-columns:1fr 28px 1fr 28px 1fr 28px 1fr}
.journey button{background:transparent;border:0;border-bottom:1px solid #ffffff38;border-radius:0;text-align:left;padding:20px 10px;color:#f2f0e9;transition:border-color .35s,background .35s}
.journey button[aria-selected=true]{background:#ffffff05;border-color:#e8e1d1;color:#fff}
.journey button small{color:#aeb0a7;font-size:11px}
.journey button>span{font-size:15px}
.journey-arrow{color:#a3a69a}
.journey-panel{grid-template-columns:1fr 1fr;gap:95px;align-items:center;margin-top:60px}
.journey-panel h3{font-family:var(--display);font-size:40px;font-weight:400}
.journey-panel p{font-size:14px;line-height:1.85;color:#b8bcb0;min-height:0;max-width:46ch}
.journey-panel .text-link{color:#e2dece}
.journey-example{background:none;border:0;padding:0;border-radius:0;width:100%;max-width:none}
.journey-art{margin-bottom:24px}
.journey-example-top{color:#b9bbb1;font-size:9px}
.journey-example-top img{filter:url("#flint-monochrome");border-radius:0}
.journey-event{font-size:20px;color:#f2f0e9}
.journey-line{background:#777b6e}
.journey-result{color:#dedfd4}
.journey-result svg{color:#ddd8c7}
.journey-example>small{color:#a8ab9f;font-size:10px}
.approach-band{background:var(--ivory);color:#252620}
.approach h2 em{color:#6a6b60}
.approach-heading>p,.approach-steps p{color:#5d6054}
.approach-heading .text-link{color:#292c23}
.approach-steps article{border-color:#25262030}
.approach-steps article>span{color:#5e6355}
.statement{position:relative;isolation:isolate;overflow:hidden;background:#111211;padding:120px 0;border-bottom:1px solid #ffffff1f}
.statement::before{content:"";position:absolute;inset:0;z-index:-1;background:url("assets/moon-hd-poster-v2.webp") center 76%/cover no-repeat;opacity:.19}
.statement .container{position:relative}
.statement img{filter:url("#flint-monochrome");border-radius:0;width:48px;height:48px}
.statement p{font-size:66px;color:#f3f1ec}
.statement p em{color:#c3c0b6}
.statement span{color:#bdbdb2;font-size:12px}
.questions h2 em{color:#bcb9ad}
.questions details{border-color:#ffffff2d}
.questions summary{color:#eeeae0;font-size:14px}
.questions details p{color:#b8bab0;font-size:13px;line-height:1.85}
.contact-section{background:var(--ivory);color:#22251f;padding-block:105px}
.contact-grid{gap:95px}
.contact-grid h2{font-size:58px}
.contact-grid>div>p{color:#66695e}
.contact-email{font-size:16px}
.contact-section label{color:#45493e;font-size:12px}
.contact-section input,.contact-section textarea,.contact-section select{background:transparent;color:#252820;border-color:#929588;border-radius:0;font-size:14px;padding:12px 0}
.contact-section input::placeholder,.contact-section textarea::placeholder{color:#606657}
.contact-section option{background:#f2f0e9;color:#252820}
.contact-section input:focus,.contact-section textarea:focus,.contact-section select:focus{border-color:#22251f}
.contact-section .dark{background:#252820;color:#fff;padding-inline:25px}
.contact-section .dark:hover{background:#404639}
.contact-section .form-note{color:#686b60;font-size:11px}
.footer{color:#dddcd3}
.footer .brand{font-size:30px;font-weight:400}
.footer .brand img{filter:url("#flint-monochrome");border-radius:0;width:38px;height:38px}
.footer-main>p{color:#afb1a5}
.footer-main{border-color:#ffffff25}
.footer-bottom,.footer-bottom button{color:#aeb0a3}
#privacy-info p{color:#b5b8a9}
@media(max-width:1150px){
 .portal-copy{padding:16px}.portal-copy>span{font-size:15px}
 .service-grid>article{gap:45px}.journey-panel,.contact-grid{gap:55px}
 .service-heading h3{font-size:33px}.contact-grid h2{font-size:48px}
}
@media(max-width:900px){
 .moon-hero .service-portals{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-grid>article,.service-grid>article:nth-child(even){gap:28px}
 .section-heading h2{font-size:44px}
 .journey-panel h3{font-size:32px}
}
@media(max-width:700px){
 .moon-hero .service-portals{gap:12px;padding-top:24px;padding-bottom:0}
 .portal-copy{padding:14px 12px;grid-template-columns:1fr 14px;gap:7px}
 .portal-copy>span{font-size:14px;line-height:1.3}
 .portal-copy svg{width:14px;height:14px}
 .moon-hero .portal-copy p{font-size:10px;line-height:1.6;min-height:32px}
 .section{padding-block:65px}
 .services{padding-top:65px}
 .section-heading{margin-bottom:32px}
 .section-heading h2{font-size:37px}
 .section-heading p{font-size:13px}
 .service-grid>article,.service-grid>article:nth-child(even){grid-template-columns:1fr;gap:26px;padding-block:38px}
 .service-grid>article:nth-child(even) .service-visual{order:0}
 .service-heading h3{font-size:32px}
 .service-heading{margin:0 0 15px}
 .service-description>p{font-size:13px;line-height:1.8}
 .capabilities{font-size:10px;margin:20px 0}
 .service-grid summary{font-size:11px}
 .ecosystem-section .section{padding-block:65px}
 .journey{grid-template-columns:1fr 1fr;gap:12px}
 .journey button{padding:14px 8px;min-height:82px}
 .journey button>span{font-size:13px}
 .journey button small{font-size:10px}
 .journey-panel{grid-template-columns:1fr;gap:36px;margin-top:35px}
 .journey-panel h3{font-size:30px}
 .journey-panel p{font-size:13px}
 .journey-art{max-width:500px}
 .journey-event{font-size:19px}
 .approach h2{font-size:38px}
 .statement{padding:75px 0}
 .statement p{font-size:42px}
 .statement span{font-size:10px}
 .questions h2{font-size:38px}
 .questions summary{font-size:12px}
 .contact-section{padding-block:65px}
 .contact-grid{gap:40px}
 .contact-grid h2{font-size:40px}
 .contact-email{font-size:14px}
 .footer-main>div,.footer-bottom{font-size:10px}
}
@media(max-width:360px){
 .portal-copy{padding:13px 10px;grid-template-columns:1fr}
 .portal-copy>span{font-size:13px}
 .portal-copy svg{display:none}
 .moon-hero .portal-copy p{font-size:9px}
 .section-heading h2,.questions h2{font-size:33px}
 .service-heading h3{font-size:29px}
 .contact-grid h2{font-size:35px}
}
@media(prefers-reduced-motion:reduce){.service-art,.service-portal,.journey button{transition:none!important}}
/* Homepage: one service collection, with space for images and readable copy. */
.services-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:56px}
.services-intro h2{font-size:clamp(38px,4.2vw,58px);line-height:1.1}
.services-intro>p{font-size:15px;line-height:1.8;max-width:34ch;margin:0 0 4px}
.service-editorial{display:grid;grid-template-columns:1fr 1fr;gap:64px 40px}
.editorial-service{display:block;min-width:0;border:0;border-radius:0;background:none}
.editorial-service .portal-window{aspect-ratio:16/10;background:#1b1c19}
.editorial-service .service-art{height:100%;aspect-ratio:auto}
.editorial-copy{padding:24px 0 0;border-top:1px solid #ffffff26;margin-top:18px}
.service-index{font-size:11px;letter-spacing:.08em;color:#c3c1b6}
.editorial-copy h3{font-family:var(--display);font-size:clamp(27px,2.5vw,36px);font-weight:400;line-height:1.2;margin:16px 0 12px;text-wrap:balance}
.editorial-copy p{max-width:46ch;font-size:14px;line-height:1.8;margin:0 0 22px}
.service-explore{display:flex;align-items:center;gap:16px;font-size:12px;color:#eeebe2}
.service-explore svg{width:20px;height:20px;transition:transform .25s}
.editorial-service:hover .service-explore svg{transform:translate(3px,-3px)}
.editorial-service:focus-visible{outline-offset:8px}
.moon-camera{animation:none!important;translate:none;transform:none;will-change:auto}
.moon-image,.moon-frames{object-position:72% center;filter:none}
.moon-frames{position:absolute;inset:0;width:100%;height:100%;opacity:1;pointer-events:none}
.moon-frames.is-ready{opacity:1}
.moon-motion-toggle{position:absolute;left:56px;bottom:65px;z-index:4;border:1px solid #ffffff50;border-radius:30px;padding:10px 15px;background:#11121180;color:#f3f1ec;font:inherit;font-size:11px;cursor:pointer;min-height:40px}
.moon-motion-toggle:hover{background:#30312c}
.moon-orbit{display:none}
@media(max-width:700px){.services-intro{display:block;margin-bottom:36px}.services-intro>p{margin-top:24px;font-size:14px}.service-editorial{grid-template-columns:1fr;gap:44px}.editorial-copy{padding-top:20px;margin-top:14px}.editorial-copy h3{font-size:30px}.moon-motion-toggle{left:20px;bottom:58px;font-size:10px}.moon-content.hero-content{left:63%;width:70%;top:41%}.moon-content h1{font-size:34px}}
@media(max-width:360px){.moon-content h1{font-size:29px}}
.header .menu-button{background:#171816b3;border-radius:50%;width:44px;height:44px;padding:11px}.header .menu-button span{background:#f3f1ec}
.moon-frames{object-fit:cover;object-position:72% center}
.art-digital{background-image:url("assets/service-digital-v3.webp")}
.art-platform{background-image:url("assets/service-platform-v3.webp")}
.art-automation{background-image:url("assets/service-automation-v3.webp")}
.art-custom{background-image:url("assets/service-custom-v3.webp")}
