/* Explanatory diagrams, not app screenshots. Intrinsic text and vector icons stay sharp at every size. */
[hidden]{display:none!important}
.landing-brand{display:inline-flex;align-items:center;flex-shrink:0}
.landing-brand img{display:block;width:218px;height:auto}
.landing-hero-visual{min-width:0;width:100%;max-width:570px;margin-inline:auto}
.work-explainer{padding:34px;border:1px solid #214779;border-radius:28px;background:linear-gradient(145deg,#102b56,#062565);box-shadow:0 30px 65px -30px #12396d66;color:#fff}
.explainer-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.explainer-eyebrow{max-width:240px;font-size:11px;line-height:1.7;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#bed7ff}
.explainer-heading{margin:24px 0 0;font-size:clamp(24px,2.4vw,32px);font-weight:700;line-height:1.2;letter-spacing:-.8px}
.explainer-panel{margin-top:25px;padding:24px;background:#ffffff0a;border:1px solid #ffffff24;border-radius:18px;min-height:345px}
.explainer-symbol{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.explainer-symbol img{filter:brightness(0) invert(1);width:55px;height:55px}
.explainer-symbol>span{font-size:56px;line-height:1;font-weight:800;letter-spacing:-3px;color:#9bbff661;font-variant-numeric:tabular-nums}
.explainer-panel h3{font-size:30px;line-height:1.12;letter-spacing:-.8px;font-weight:750;max-width:370px}
.explainer-panel>p{margin:14px 0 22px;font-size:14px;line-height:1.75;color:#d3e3fa;max-width:390px}
.explainer-flow{display:flex;flex-direction:column;gap:11px;margin:0;padding:0;list-style:none}
.explainer-flow li{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;color:#f0f6ff}
.explainer-flow li>span{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;background:#b3d1ff1a;border:1px solid #b3d1ff40;font-size:10px;color:#bcd8ff}
.explainer-flow li:last-child>span{background:#a4e9d7;color:#073b32;border-color:#a4e9d7}
.explainer-hint{margin:25px 0 12px;color:#bed7ff;font-size:11px}
.explainer-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.explainer-tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:66px;padding:10px 5px;border:1px solid #ffffff24;border-radius:10px;color:#d6e6ff;font-size:11px;font-weight:600;background:transparent;cursor:pointer;transition:background .18s,color .18s}
.explainer-tabs button img{filter:brightness(0) invert(1);opacity:.8}
.explainer-tabs button:hover{background:#ffffff12}
.explainer-tabs button[aria-selected=true]{background:#fff;color:#123568;border-color:#fff;box-shadow:0 4px 12px #0001}
.explainer-tabs button[aria-selected=true] img{filter:none;opacity:1}
.explainer-tabs button:focus-visible,.explainer-panel:focus-visible{outline:3px solid #99f6e4;outline-offset:4px}
.feature-story{--story-accent:#1d4ed8;--story-soft:#eaf3ff;width:100%;margin:0;padding:30px;border:1px solid #d9e5f6;border-radius:24px;background:linear-gradient(145deg,#fff,#f4f8ff);box-shadow:0 22px 50px -35px #173f7955;overflow:hidden;color:#102b56}
.feature-story--map,.feature-story--company{--story-accent:#6046a5;--story-soft:#f0ecfb;background:linear-gradient(145deg,#fff,#f4f1fb)}
.feature-story--projects,.feature-story--travel{--story-accent:#087568;--story-soft:#e3f4f0;background:linear-gradient(145deg,#fff,#eff9f5)}
.feature-story--history,.feature-story--pdf{--story-accent:#a2551e;--story-soft:#fbefdf;background:linear-gradient(145deg,#fff,#fff8ef)}
.story-top{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#506783;font-size:10px;line-height:1.7;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}
.story-top>span:first-child{max-width:280px}.story-number{white-space:nowrap;font-variant-numeric:tabular-nums;color:#607797;font-size:11px;letter-spacing:1px}
.story-main{padding:34px 0 28px}
.story-icon{display:grid;place-items:center;width:66px;height:66px;border:1px solid #fff;border-radius:18px;background:var(--story-soft);margin-bottom:22px;box-shadow:0 3px 0 #102b5605}
#features .feature-story img{object-fit:contain;transform:none!important;transition:none!important;flex-shrink:0}
.story-main h4{max-width:420px;font-size:clamp(26px,2.6vw,38px);line-height:1.15;letter-spacing:-1.2px;font-weight:750;margin:0 0 28px}
.feature-story figcaption{font-size:14px;line-height:1.8;color:#506580;max-width:470px}
.story-steps{list-style:none;margin:25px 0 0;padding:21px 0 0;border-top:1px solid #102b5614;display:grid;gap:10px}
.story-steps li{display:flex;align-items:center;gap:11px;font-size:12px;line-height:1.6;color:#2b4563;font-weight:600}
.story-steps li>span{display:grid;place-items:center;background:var(--story-soft);color:var(--story-accent);font-size:10px;width:22px;height:22px;border-radius:50%;flex-shrink:0}
.time-endpoints{display:flex;justify-content:space-between}.time-endpoints>span{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#60738d}.time-endpoints>span:last-child{text-align:right}.time-endpoints strong{font-size:30px;line-height:1.2;letter-spacing:-1px;color:#173767;font-variant-numeric:tabular-nums}
.time-track{display:flex;gap:5px;height:16px;margin:16px 0;border-radius:10px;overflow:hidden}.time-track span{background:#1d4ed8;flex:1}.time-track span:nth-child(2){flex:0 0 7%;background:#a9c6f8}.time-track span:last-child{background:#478cff}
.time-legend{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#556c8a}.time-legend b{display:block;font-size:15px;color:#1f3c65;margin-bottom:3px}.time-legend span:last-child{text-align:right}
.location-explanation{list-style:none;display:grid;gap:0;padding:0;margin:0}.location-explanation li{display:flex;align-items:center;gap:18px;position:relative;padding:12px 0;font-size:16px;font-weight:600}.location-explanation li:not(:last-child):after{content:"";position:absolute;top:46px;bottom:-10px;left:21px;border-left:2px dashed #b5c7e4}.location-dot{display:grid;place-items:center;flex:none;width:44px;height:44px;background:white;border:1px solid #dbe5f1;border-radius:50%;z-index:1}
.impact-explanation{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 0}.impact-explanation>div{min-width:0;flex:1}.impact-explanation>div:last-child{text-align:right}.impact-explanation strong{font-size:clamp(34px,4vw,57px);letter-spacing:-2px;line-height:1.3;color:#087568}.impact-explanation span{display:block;font-size:11px;color:#466d68;line-height:1.6}.story-note{font-size:11px;color:#55746e;padding-top:10px;border-top:1px solid #08756822}
.connection-explanation{display:flex;flex-direction:column;align-items:center}.connection-explanation>strong{position:relative;display:block;padding:17px 30px;background:var(--story-accent);border-radius:12px;color:#fff;font-size:17px;font-weight:700}.connection-explanation>strong:after{content:"";position:absolute;left:50%;bottom:-24px;height:24px;border-left:1px solid #9fb3c9}.connection-items{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;width:100%;margin-top:24px;padding-top:16px;border-top:1px solid #bbccdc}.connection-items span{display:flex;align-items:center;gap:6px;background:white;border:1px solid #dbe5ed;border-radius:9px;padding:10px;font-size:11px;font-weight:600}
.collection-explanation{display:flex;flex-direction:column;align-items:center}.collection-items{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.collection-items span{padding:9px 16px;border:1px solid #d9e4f0;border-radius:999px;background:white;font-size:12px;font-weight:600}.collection-connector{font-size:28px;line-height:1;margin:12px;color:#7891b2}.collection-result{display:flex;align-items:center;justify-content:center;gap:14px;max-width:100%;padding:17px 20px;background:var(--story-soft);border-radius:12px;font-size:13px;color:var(--story-accent);line-height:1.6;text-align:left}.file-type{background:#fff;border:1px solid currentColor;border-radius:6px;padding:8px 6px;font-size:11px;letter-spacing:.5px}
.maker-signature{padding:48px;border:1px solid #eee2c4;border-radius:24px;background:#fffaf0;color:#634915;box-shadow:0 25px 60px -40px #63491566}.maker-name{display:block;font-size:16px;font-weight:800;letter-spacing:-.4px;margin-bottom:48px}.maker-signature>img{margin:0 0 26px}.maker-signature h3{font-size:38px;line-height:1.15;font-weight:750;letter-spacing:-1px}.maker-signature p{font-size:16px;line-height:1.8;margin:20px 0;color:#766440}.maker-origin{display:inline-block;margin-top:18px;padding:8px 16px;border:1px solid #e5d7b5;border-radius:999px;font-size:12px;font-weight:600}
section[id]{scroll-margin-top:90px}
@media(min-width:1280px){.landing-header>div:first-child{max-width:1440px;padding-left:24px;padding-right:24px}.landing-header>div:first-child>div{gap:24px}.landing-header-nav{gap:18px;font-size:14px;white-space:nowrap}.landing-header-nav>a{margin-left:0!important}.landing-header-actions{gap:8px;font-size:14px;white-space:nowrap;flex-shrink:0}.landing-header-actions>a{margin-left:0}}
.consent-bar{position:fixed;bottom:16px;left:16px;right:16px;z-index:90;max-width:740px;padding:18px;margin:auto;background:white;border:1px solid #dbe7f3;border-radius:14px;box-shadow:0 8px 40px #172b4d20;color:#172b4d}.consent-bar form{display:flex;gap:12px;margin-top:14px}.consent-bar button{padding:10px 16px;border:1px solid #dbe7f3;border-radius:8px}.consent-bar button.primary{background:#1d4ed8;color:white}
@media(max-width:1023px){#features .container>div:nth-child(2n+3){padding:2rem 1.25rem}#features .group>div{min-width:0;max-width:100%}.landing-hero-visual{margin-top:30px}#features .group>div:first-child{width:100%}.feature-story{max-width:590px;margin-inline:auto}}
@media(max-width:640px){.landing-brand img{width:181px}.work-explainer{padding:23px;border-radius:23px}.explainer-eyebrow{font-size:10px}.explainer-panel{padding:20px;min-height:367px}.explainer-panel h3{font-size:28px}.explainer-panel>p{font-size:13px}.explainer-symbol{margin-bottom:20px}.explainer-heading{font-size:27px}.explainer-tabs{gap:5px}.explainer-tabs button{font-size:10px}.feature-story{padding:24px}.story-main{padding:28px 0 24px}.story-top{font-size:9px;gap:12px}.story-main h4{font-size:29px}.story-steps li{font-size:11px}.feature-story figcaption{font-size:13px}.connection-items{gap:6px}.connection-items span{font-size:10px;padding:8px}.collection-items span{padding:8px 12px;font-size:11px}.maker-signature{padding:30px}.maker-signature h3{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}[data-aos]{opacity:1!important;transform:none!important}.explainer-tabs button{transition:none}}
