:root { --bg:#17191f; --ink:#f8f8fc; --muted:#a9b4c7; --line:rgba(70,220,244,.19); --lime:#46dcf4; --violet:#7566dc; --orange:#ff922e; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:Manrope, Arial, sans-serif; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
.noise { pointer-events:none; position:fixed; inset:0; z-index:10; opacity:.07; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E"); }
.cursor-glow { width:500px; height:500px; position:fixed; pointer-events:none; z-index:-1; border-radius:50%; background:radial-gradient(circle,rgba(146,120,255,.13),transparent 68%); transform:translate(-50%,-50%); transition:opacity .4s; }
.site-header { height:106px; padding:23px clamp(22px,5vw,80px); display:flex; align-items:center; justify-content:space-between; position:absolute; width:100%; z-index:2; }
.brand { display:flex; align-items:center; gap:10px; font-size:12px; font-weight:800; line-height:.9; letter-spacing:-.6px; text-transform:lowercase; }
.brand .brand-logo { width:132px; height:56px; object-fit:contain; object-position:center; border-radius:0; }
.dot { color:var(--orange); }
nav { display:flex; gap:30px; margin-left:80px; }
nav a, .header-cta, footer { font:500 11px/1.2 'DM Mono',monospace; letter-spacing:.03em; }
nav a { color:#cfced4; transition:color .2s; } nav a:hover { color:var(--lime); }
.header-cta { border:1px solid var(--line); padding:12px 15px; border-radius:100px; transition:.25s; }.header-cta:hover { background:var(--lime); color:var(--bg); border-color:var(--lime); }.header-cta span { margin-left:7px; }
.hero { min-height:100svh; padding:168px clamp(22px,11vw,176px) 52px; position:relative; isolation:isolate; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; }
.hero:after { content:''; position:absolute; z-index:-2; inset:0; background:radial-gradient(circle at 55% 40%,#1f3150 0,transparent 34%),radial-gradient(circle at 83% 80%,#342047 0,transparent 32%); }
.hero-topline { display:flex; gap:28px; font:11px 'DM Mono',monospace; color:var(--muted); text-transform:uppercase; }
.hero h1 { font-size:clamp(3.45rem,8.4vw,9.1rem); font-weight:700; line-height:.88; letter-spacing:-.085em; margin:clamp(45px,10vh,108px) 0 35px; max-width:1000px; }
em { font-family:Georgia,serif; font-weight:400; letter-spacing:-.07em; }
.hero-idea { display:block; font-size:.8em; line-height:1.04; letter-spacing:-.045em; }
.hero-brand-phrase { display:inline-block; }
.hero h1 em { display:block; margin-top:.18em; color:var(--orange); font-size:.85em; line-height:1.04; letter-spacing:-.04em; }
.hero-outcome { display:block; margin-top:.55em; font-size:clamp(1.5rem,3.5vw,3.2rem); font-weight:600; line-height:1.25; letter-spacing:-.025em; }
.hero-outcome > span { display:inline-block; }
@media (max-width:720px) { .hero h1 em { font-size:clamp(2rem,10vw,4rem); }.hero .hero-summary { font-size:13px; } }
.eyebrow { font:500 10px/1.2 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; color:var(--lime); }
.hero-eyebrow { position:absolute; left:clamp(22px,5vw,80px); top:51%; writing-mode:vertical-rl; transform:rotate(180deg); }
.hero-bottom { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-left:max(0px,12vw); }.hero-bottom > p { max-width:490px; margin:0; line-height:1.55; color:#d2d0d3; font-size:15px; }
.hero-summary { max-width:560px; color:#d2d0d3; font-size:15px; line-height:1.65; }
.hero-summary p { margin:0; }
.hero-summary p + p { margin-top:14px; }
.hero-app-link { display:inline-flex; align-items:center; justify-content:space-between; flex-shrink:0; gap:24px; padding:16px 19px; border:1px solid var(--lime); border-radius:8px; color:var(--lime); font:500 11px/1.2 'DM Mono',monospace; transition:background-color .25s,color .25s; }
.hero-app-link span { font-size:19px; transition:transform .25s; }
.hero-app-link:hover { background:var(--lime); color:var(--bg); }
.hero-app-link:hover span { transform:translate(2px,-2px); }
.hero-app-link:focus-visible { outline:2px solid var(--lime); outline-offset:5px; }
.hero-orbit { position:absolute; z-index:-1; border:1px solid rgba(70,220,244,.30); border-radius:50%; }.orbit-one { width:56vw; height:56vw; right:-16vw; top:-14vw; animation:spin 26s linear infinite; }.orbit-two { width:29vw; height:29vw; right:15vw; bottom:-19vw; border-color:rgba(246,77,155,.32); animation:spin 17s linear reverse infinite; }
@keyframes spin { to { transform:rotate(360deg); } }
.section { padding:clamp(90px,13vw,180px) clamp(22px,8vw,128px); }.section-label { display:flex; gap:22px; color:#aaa9b0; font:500 10px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }.section-label span:first-child { color:var(--orange); }
.thinking-grid { display:grid; grid-template-columns:1.7fr .7fr; gap:8vw; margin:74px 0 100px; }.section h2 { font-size:clamp(2.7rem,5.8vw,6.3rem); line-height:.95; letter-spacing:-.08em; margin:0; }.thinking h2 em { color:var(--lime); }.thinking-copy { max-width:350px; padding-top:16px; }.thinking-copy p { line-height:1.55; color:#cac8cc; font-size:14px; }.text-link { display:inline-block; color:var(--lime); font:500 11px 'DM Mono',monospace; margin-top:20px; }.text-link span { font-size:18px; margin-left:6px; }
.idea-stack { display:grid; grid-template-columns:repeat(3,1fr); }.idea-card { min-height:445px; padding:23px; display:flex; flex-direction:column; color:#181722; transition:transform .35s; }.idea-card:hover { transform:translateY(-14px) rotate(-1deg); }.idea-card > span { font:500 10px 'DM Mono',monospace; }.idea-illustration { display:block; width:100%; height:175px; margin:5px 0 19px; object-fit:contain; object-position:center; }.idea-card h3 { margin:0 0 13px; font-size:clamp(1.9rem,3.3vw,3.6rem); line-height:.9; letter-spacing:-.08em; }.idea-card p { max-width:340px; margin:0; font-size:13px; line-height:1.55; }.idea-card b { margin-top:auto; padding-top:8px; font-size:30px; align-self:flex-end; }.cyan { background:var(--lime); }.lime { background:var(--orange); }.violet { background:var(--violet); }
.work { background:#f5f7fb; color:#161923; }.work .section-label { color:#777d8d; }.work-intro { display:flex; align-items:end; justify-content:space-between; gap:40px; margin:72px 0 65px; }.work h2 em { color:#6557c9; }.work-intro p { max-width:270px; font-size:14px; line-height:1.5; }.product-grid { display:grid; grid-template-columns:1.1fr 1fr 1fr; gap:12px; }.product-card { border-radius:4px; min-height:510px; padding:23px; display:flex; flex-direction:column; overflow:hidden; }.product-a { background:#171a27; color:#fff; }.product-b { background:var(--violet); color:#fff; }.product-c { background:#8de9f5; }.product-card h3 { margin:10px 0 13px; font-size:clamp(1.65rem,2.6vw,2.65rem); letter-spacing:-.07em; line-height:.96; }.product-card h3 em { color:inherit; }.product-card a { font:500 10px 'DM Mono',monospace; margin-top:auto; border-top:1px solid currentColor; padding-top:14px; }.product-card a span { float:right; font-size:18px; }.product-tag { font:500 9px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }.product-ui { height:190px; position:relative; margin:-23px -23px 25px; overflow:hidden; }.ui-pulse { background:linear-gradient(140deg,#20233c,#344a76); }.ui-pulse div { width:54px; height:54px; position:absolute; border-radius:50%; background:var(--lime); filter:blur(1px); animation:pulse 3s infinite alternate; }.ui-pulse div:nth-child(1){left:10%;top:40%}.ui-pulse div:nth-child(2){left:34%;top:20%;animation-delay:.4s}.ui-pulse div:nth-child(3){right:28%;bottom:15%;animation-delay:1s}.ui-pulse div:nth-child(4){right:4%;top:18%;animation-delay:1.4s}.ui-pulse span { position:absolute; font-size:50px; left:48%; top:34%; color:var(--orange); } @keyframes pulse { to { transform:scale(1.7); opacity:.5; } }.ui-bloom { background:var(--orange); }.ui-bloom span { position:absolute; background:#6a48ee; width:136px; height:58px; border-radius:50% 50% 50% 10%; transform-origin:bottom right; left:50%; top:50%; }.ui-bloom span:nth-child(1){transform:rotate(0)}.ui-bloom span:nth-child(2){transform:rotate(120deg)}.ui-bloom span:nth-child(3){transform:rotate(240deg)}.ui-bloom b { position:absolute; left:calc(50% - 17px); top:calc(50% - 21px); font-size:35px; color:var(--lime); }.ui-loop { background:#25374e; display:grid; place-items:center; }.ui-loop:before,.ui-loop:after { content:''; position:absolute; border:1px solid #8de9f5; border-radius:48%; width:310px; height:110px; transform:rotate(-28deg); }.ui-loop:after { transform:rotate(31deg); }.ui-loop span { position:relative; z-index:1; background:#8de9f5; color:#1c3144; padding:8px; font:500 12px/1 'DM Mono',monospace; transform:rotate(-8deg); }
.social-section { padding:0 clamp(22px,8vw,128px) 70px; }.social-grid { display:grid; grid-template-columns:1fr 1fr; }
.contact { position:relative; overflow:hidden; min-height:640px; background:var(--orange); color:#201623; display:flex; flex-direction:column; justify-content:center; }.contact .eyebrow { color:#2a1a2a; }.contact h2 { margin:20px 0 42px; font-size:clamp(3.7rem,8.5vw,9rem); }.contact h2 em { color:#f8f8fc; }.contact-link { position:relative; z-index:1; align-self:flex-start; padding-bottom:9px; border-bottom:1px solid currentColor; font:500 clamp(14px,2vw,23px) 'DM Mono',monospace; }.contact-link span { padding-left:11px; }.contact-spark { position:absolute; color:var(--lime); font-size:min(35vw,440px); right:-4vw; bottom:-13vw; line-height:1; transform:rotate(13deg); }
footer { min-height:150px; padding:37px clamp(22px,5vw,80px); display:grid; grid-template-columns:1fr 1fr 1fr; color:#a9b4c7; align-items:start; }.footer-brand { color:#f1eff0; font-family:Manrope,Arial,sans-serif; font-size:13px; }.footer-brand .brand-logo { width:132px; height:56px; }.footer-brand > span { white-space:nowrap; } footer p { margin:0; line-height:1.5; } footer div { display:flex; justify-content:flex-end; gap:18px; } footer a:hover { color:var(--lime); }
.product-subtitle { margin:0 0 10px; font-size:13px; font-weight:700; line-height:1.35; }.product-description { margin:0 0 17px; font-size:12px; line-height:1.55; opacity:.82; }.product-slogan { margin:0 0 17px; color:var(--orange); font-size:11px; font-weight:800; line-height:1.45; }.product-original-name { margin:-5px 0 12px; font:500 9px 'DM Mono',monospace; opacity:.72; }.product-availability { display:block; margin:auto 0 0; padding-top:13px; border-top:1px solid currentColor; color:inherit; font:500 9px 'DM Mono',monospace; text-decoration:none; text-transform:uppercase; letter-spacing:.07em; opacity:.8; transition:color .2s, opacity .2s; }.product-availability:hover { color:var(--orange); opacity:1; }.product-availability span { float:right; font-size:16px; line-height:.6; }
.product-image { display:block; width:calc(100% + 46px); height:190px; margin:-23px -23px 25px; object-fit:cover; object-position:center; }
.ui-books { background:radial-gradient(ellipse at 50% 100%,#35517b 0,transparent 68%),#171a27; }.book-stack { position:absolute; left:12%; right:12%; bottom:35px; height:105px; display:flex; align-items:flex-end; justify-content:center; gap:8px; border-bottom:3px solid rgba(255,255,255,.72); }.book-stack i { display:block; width:16%; height:80%; border-radius:4px 4px 1px 1px; background:linear-gradient(145deg,#46dcf4,#5b73d8); box-shadow:inset 4px 0 rgba(255,255,255,.2); }.book-stack i:nth-child(2){height:93%;background:linear-gradient(145deg,#ff922e,#d85c3e)}.book-stack i:nth-child(3){height:70%;background:linear-gradient(145deg,#7566dc,#423b91)}.book-stack i:nth-child(4){height:86%;background:linear-gradient(145deg,#46dcf4,#296da0)}.book-stack i:nth-child(5){height:76%;background:linear-gradient(145deg,#ffb34d,#cf792a)}.ui-books>span,.ui-shelves>span { position:absolute; top:17px; left:20px; font:500 9px 'DM Mono',monospace; letter-spacing:.15em; color:rgba(255,255,255,.72); }.ui-formats { background:linear-gradient(140deg,#6257c9,#302867); display:flex; align-items:center; justify-content:center; gap:8px; }.ui-formats span { display:grid; place-items:center; padding:12px 9px; border:1px solid rgba(255,255,255,.5); border-radius:8px; color:#fff; font:500 8px 'DM Mono',monospace; letter-spacing:.04em; }.ui-formats span:nth-child(2){transform:translateY(-16px);background:rgba(255,255,255,.12)}.ui-formats span:nth-child(3){transform:translateY(13px)}.ui-formats b { position:absolute; right:20px; top:15px; color:var(--orange); font-size:26px; }.ui-shelves { display:flex; flex-direction:column; justify-content:center; gap:12px; padding:30px 20px 20px; background:linear-gradient(140deg,#8de9f5,#56c3dd); }.ui-shelves>div { height:49px; display:flex; align-items:flex-end; justify-content:center; gap:7px; border-bottom:3px solid #26354a; }.ui-shelves i { width:14%; height:80%; border-radius:3px 3px 0 0; background:#7566dc; }.ui-shelves i:nth-child(2){height:96%;background:#ff922e}.ui-shelves i:nth-child(3){height:70%;background:#f5f7fb}.ui-shelves i:nth-child(4){height:88%;background:#354b77}.ui-shelves>span { color:#26354a; top:14px; }
.ui-applications { background:linear-gradient(140deg,#283b5c,#171a27); display:grid; place-items:center; }.application-window { position:relative; width:70%; height:115px; padding:24px 14px 12px; display:grid; grid-template-columns:repeat(3,1fr); gap:7px; background:#f5f7fb; border-radius:8px; box-shadow:0 14px 30px #10131e66; }.application-window>span { position:absolute; top:9px; width:5px; height:5px; border-radius:50%; background:#ff922e; }.application-window>span:nth-child(1){left:12px}.application-window>span:nth-child(2){left:22px;background:#46dcf4}.application-window>span:nth-child(3){left:32px;background:#7566dc}.application-window b { grid-column:1/4; color:#35415b; font:500 7px 'DM Mono',monospace; }.application-window i { height:48px; border-radius:3px; background:linear-gradient(180deg,#8de9f5 0 24%,#d9dfeb 24% 34%,#fff 34%); border:1px solid #d9dfeb; }.application-window i:nth-last-child(1){background:linear-gradient(180deg,#ffbd6e 0 24%,#d9dfeb 24% 34%,#fff 34%)}
.ui-journal { background:linear-gradient(140deg,#8de9f5,#56c3dd); display:grid; place-items:center; }.journal-page { position:relative; z-index:1; width:58%; height:125px; padding:19px 15px; background:#f5f7fb; border-radius:4px; box-shadow:0 14px 30px #23364a33; transform:rotate(-4deg); }.journal-page span { display:block; color:#6257c9; font:500 8px 'DM Mono',monospace; margin-bottom:13px; }.journal-page i { display:block; width:83%; height:1px; margin:10px 0; background:#bcc6d8; }.journal-page b { position:absolute; right:12px; bottom:10px; color:#ff922e; font-size:15px; }.journal-orbit { position:absolute; width:132px; height:132px; border:1px solid rgba(255,255,255,.8); border-radius:50%; }
.reveal,.reveal-card { opacity:0; transform:translateY(24px); transition:opacity .75s ease, transform .75s cubic-bezier(.22,.61,.36,1); }.is-visible { opacity:1; transform:none; }.reveal-card:nth-child(2) { transition-delay:.12s; }.reveal-card:nth-child(3) { transition-delay:.24s; }
/* App cards respond to pointer and keyboard focus after their entrance reveal. */
.product-card { transition:opacity .75s ease, transform .38s cubic-bezier(.2,.7,.25,1), box-shadow .38s ease, background-color .38s ease; }
.product-card .product-image { transform:scale(1); transition:transform .65s cubic-bezier(.2,.7,.25,1), filter .4s ease; }
.product-card h3 { transition:color .3s ease, transform .3s ease; }
.product-card a { transition:opacity .25s ease, color .25s ease, padding .25s ease; }
.product-card a span { display:inline-block; transition:transform .25s ease; }
.product-card:focus-within a:focus-visible { outline:2px solid currentColor; outline-offset:5px; }
@media (hover:hover) {
  .product-card.is-visible:hover { transform:translateY(-9px) scale(1.012); box-shadow:0 22px 50px rgba(30,35,65,.18); transition-delay:0s; }
  .product-card.is-visible:hover .product-image { transform:scale(1.055); filter:saturate(1.08); }
  .product-card.is-visible:hover h3 { transform:translateX(3px); }
  .product-card.is-visible:hover a { opacity:1; }
  .product-card.is-visible:hover a span { transform:translate(4px,-3px); }
  .product-card.product-a.is-visible:hover { background-color:#20243a; }
  .product-card.product-a.is-visible:hover h3 { color:var(--lime); }
  .product-card.product-b.is-visible:hover { background-color:#6658ce; }
  .product-card.product-b.is-visible:hover h3 { color:#aaf5ff; }
  .product-card.product-c.is-visible:hover { background-color:#79deeb; }
  .product-card.product-c.is-visible:hover h3 { color:#4640a8; }
}
.product-card.is-visible:focus-within { transform:translateY(-6px); box-shadow:0 18px 42px rgba(30,35,65,.15); }
.product-card.is-visible:focus-within .product-image { transform:scale(1.035); }
@media (max-width:720px) { .site-header { height:83px; padding:18px 20px; }.header-cta, nav { display:none; }.hero { padding:130px 22px 30px; min-height:720px; }.hero-topline { font-size:9px; gap:12px; }.hero h1 { margin:56px 0 32px; font-size:clamp(3.2rem,14vw,5rem); }.hero-eyebrow { display:none; }.hero-bottom { margin-left:0; flex-direction:column; align-items:flex-start; }.hero-bottom > p { font-size:13px; max-width:320px; }.orbit-one { width:110vw;height:110vw;right:-51vw;top:-26vw; }.orbit-two { width:75vw;height:75vw;right:-13vw;bottom:-26vw; }.marquee-section { margin-bottom:40px; }.section { padding:74px 22px; }.thinking-grid { grid-template-columns:1fr; gap:20px; margin:48px 0 54px; }.thinking-copy { padding:0; }.idea-stack,.product-grid { grid-template-columns:1fr; }.idea-card { min-height:390px; }.idea-illustration { height:145px; margin:2px 0 16px; }.idea-card h3 { margin:0 0 12px; font-size:clamp(2.4rem,11vw,3.6rem); }.idea-card p { font-size:13px; }.work-intro { display:block; margin:48px 0 42px; }.work-intro p { margin-top:20px; }.product-card { min-height:400px; }.product-ui,.product-image { height:160px; }.social-section { padding:0 22px 38px; }.social-grid { grid-template-columns:1fr; }.social-tile { min-height:205px; }.contact { min-height:520px; }.contact-spark { font-size:250px; bottom:-35px; }.contact-link { font-size:13px; } footer { grid-template-columns:1fr 1fr; gap:30px 12px; padding:31px 22px; } footer p { grid-column:1/3; grid-row:2; } footer div { justify-content:flex-start; grid-column:2; grid-row:1; gap:12px; font-size:9px; } }
@media (prefers-reduced-motion: reduce) { *,*:before,*:after { animation-duration:.01ms!important; transition-duration:.01ms!important; scroll-behavior:auto!important; } }

/* Legal pages */
.legal-page { min-height:100vh; background:var(--bg); }
.legal-header { position:relative; height:auto; min-height:94px; }
.legal-header .brand-logo { object-fit:contain; }
.legal-header .legal-home { color:var(--lime); font:500 11px 'DM Mono',monospace; }
.legal-main { width:min(860px,100%); margin:0 auto; padding:clamp(60px,9vw,120px) clamp(22px,5vw,60px) 110px; }
.legal-kicker { color:var(--orange); font:500 10px 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.legal-main h1 { margin:18px 0 54px; font-size:clamp(3rem,8vw,6.6rem); line-height:.9; letter-spacing:-.08em; }
.legal-main h2 { margin:48px 0 14px; color:var(--lime); font-size:clamp(1.35rem,3vw,1.8rem); letter-spacing:-.05em; }
.legal-main p,.legal-main li { color:#d0d0d8; font-size:14px; line-height:1.75; }
.legal-main ul { padding-left:20px; }
.legal-main a { color:var(--lime); text-decoration:underline; text-underline-offset:3px; }
.legal-contact { border-left:2px solid var(--orange); padding-left:20px; }
.legal-back { display:inline-flex; margin-top:42px; color:var(--orange)!important; font:500 11px 'DM Mono',monospace; }
.legal-footer { min-height:0; padding-top:25px; padding-bottom:25px; border-top:1px solid var(--line); }
@media (max-width:720px) { .legal-header { padding:18px 20px; }.legal-main { padding-top:60px; padding-bottom:75px; }.legal-main h1 { margin-bottom:42px; }.legal-main p,.legal-main li { font-size:13px; }.legal-main h2 { margin-top:37px; }.legal-footer { display:block; }.legal-footer p { margin-bottom:16px; }.legal-footer div { justify-content:flex-start; flex-wrap:wrap; } }
.cookie-banner { position:fixed; z-index:30; left:50%; bottom:18px; width:min(720px,calc(100% - 36px)); display:flex; align-items:flex-end; justify-content:space-between; gap:26px; padding:20px 22px; border:1px solid rgba(70,220,244,.28); border-radius:12px; background:rgba(23,25,31,.96); color:var(--ink); box-shadow:0 18px 70px rgba(0,0,0,.45); backdrop-filter:blur(18px); transform:translateX(-50%); }
.cookie-banner[hidden] { display:none; }
.cookie-banner-copy { max-width:440px; }
.cookie-banner-copy p { margin:0; color:#c9cbd3; font-size:12px; line-height:1.5; }
.cookie-banner-copy .cookie-banner-label { margin-bottom:8px; color:var(--orange); font:500 9px 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.cookie-banner-copy h2 { margin:0 0 7px; font-size:clamp(17px,2vw,21px); letter-spacing:-.05em; }
.cookie-banner-actions { display:flex; align-items:center; gap:17px; flex-shrink:0; font:500 10px 'DM Mono',monospace; }
.cookie-banner-actions a { color:var(--lime); white-space:nowrap; }
.cookie-banner-actions a span { margin-left:3px; }
.cookie-banner-actions button { border:0; border-radius:100px; padding:12px 18px; background:var(--lime); color:#101923; font:500 10px 'DM Mono',monospace; cursor:pointer; transition:transform .2s,background .2s; }
.cookie-banner-actions button:hover { transform:translateY(-2px); background:#7fe9f7; }
@media (max-width:720px) { .cookie-banner { bottom:10px; width:calc(100% - 20px); display:block; padding:16px; border-radius:10px; }.cookie-banner-copy p { font-size:11px; }.cookie-banner-copy h2 { font-size:17px; }.cookie-banner-actions { justify-content:space-between; margin-top:14px; }.cookie-banner-actions button { min-width:90px; } }
/* Human purpose: two visual stories with concise supporting principles. */
.values.section { padding-top:clamp(80px,10vw,128px); padding-bottom:clamp(70px,9vw,118px); }
.values-intro { max-width:960px; margin:48px 0 40px; }
.values-intro .eyebrow { margin:0 0 18px; }
.values-intro h2 { margin:0; font-size:clamp(3rem,6.4vw,6.3rem); line-height:.98; letter-spacing:-.075em; }
.values-intro h2 em { color:var(--orange); }
.values-headline-pair { display:inline-block; white-space:nowrap; }
.values-intro .values-lead { max-width:665px; margin:24px 0 0; color:#c7d1df; font-size:16px; line-height:1.6; }
.values-stories { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.values-story { display:flex; flex-direction:column; min-width:0; overflow:hidden; border-radius:12px; color:#222a39; transition:opacity .75s ease,transform .4s cubic-bezier(.2,.7,.25,1),box-shadow .4s ease; }
.values-story-people { background:var(--lime); }
.values-story-time { background:var(--orange); }
.values-story-media { position:relative; aspect-ratio:4/3; overflow:hidden; }
.values-story-media img { display:block; width:100%; height:100%; padding:48px 18px 10px; object-fit:contain; transition:transform .7s cubic-bezier(.2,.7,.25,1); }
.values-story-media > span { position:absolute; top:18px; left:18px; padding:9px 11px; border:1px solid rgba(34,42,57,.2); border-radius:5px; background:rgba(255,255,255,.28); color:#33303c; font:500 8px 'DM Mono',monospace; letter-spacing:.08em; }
.values-story-copy { display:flex; flex:1; flex-direction:column; padding:28px; }
.values-story-copy h3 { margin:0 0 18px; font-size:clamp(2rem,3.3vw,3.3rem); line-height:1; letter-spacing:-.065em; }
.values-story-copy h3 em { color:#422c75; }
.values-story-copy p { flex:1; margin:0; color:#302b3e; font-size:13px; line-height:1.65; }
.values-story-note { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:24px; padding-top:14px; border-top:1px solid rgba(34,42,57,.2); color:#403249; font:500 8px 'DM Mono',monospace; letter-spacing:.06em; }
.values-story-note b { color:#422c75; font-size:25px; font-weight:400; }
.values-foundations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin-top:36px; padding-top:27px; border-top:1px solid var(--line); }
.values-foundation { display:flex; align-items:flex-start; gap:14px; }
.europe-mark { width:28px; height:28px; flex-shrink:0; color:var(--lime); }
.values-foundation-icon { width:25px; flex-shrink:0; color:var(--lime); font-size:25px; line-height:1; }
.values-foundation h3 { margin:0 0 6px; font-size:16px; letter-spacing:-.04em; }
.values-foundation p { max-width:250px; margin:0; color:#aebdcd; font-size:12px; line-height:1.5; }
@media (hover:hover) {
  .values-story.is-visible:hover { transform:translateY(-6px); box-shadow:0 22px 45px rgba(0,0,0,.2); transition-delay:0s; }
  .values-story.is-visible:hover img { transform:scale(1.035); }
}
@media (max-width:720px) {
  .values.section { padding-top:74px; padding-bottom:64px; }
  .values-intro { margin:34px 0 28px; }
  .values-intro h2 { font-size:clamp(2.6rem,10.5vw,4.2rem); line-height:1; }
  .values-intro .values-lead { margin-top:20px; font-size:14px; }
  .values-stories { grid-template-columns:1fr; gap:18px; }
  .values-story-media > span { top:15px; left:15px; font-size:7px; padding:8px 9px; }
  .values-story-copy { padding:22px; }
  .values-story-copy h3 { font-size:clamp(1.9rem,8vw,2.7rem); }
  .values-story-note { font-size:7px; }
  .values-foundations { grid-template-columns:1fr; gap:0; margin-top:28px; padding-top:0; }
  .values-foundation { padding:19px 0; border-bottom:1px solid var(--line); }
  .values-foundation:last-child { border-bottom:0; padding-bottom:0; }
  .values-foundation p { max-width:none; }
}

/* Social previews: platform colours, real app artwork, and planned content. */
.social-section { padding-top:28px; }
.social-intro { display:flex; align-items:end; justify-content:space-between; gap:36px; margin:0 0 32px; }
.social-intro .eyebrow { margin:0 0 15px; }
.social-intro h2 { max-width:670px; margin:0; font-size:clamp(2.5rem,5.1vw,5rem); line-height:.94; letter-spacing:-.08em; }
.social-intro h2 em { color:var(--orange); }
.social-intro > p { max-width:310px; margin:0 0 4px; color:#b9becc; font-size:13px; line-height:1.6; }
.social-grid { gap:20px; }
.social-tile { --social-accent:#d91427; --tile-ink:#30171d; position:relative; isolation:isolate; display:grid; grid-template-rows:auto minmax(235px,1fr) auto; gap:22px; min-height:620px; padding:26px; overflow:hidden; border:1px solid transparent; border-radius:16px; color:var(--tile-ink); text-decoration:none; transition:opacity .75s ease,transform .4s cubic-bezier(.2,.7,.25,1),box-shadow .4s ease,border-color .4s ease; }
.social-tile:before { content:""; position:absolute; z-index:-1; inset:0; opacity:.6; pointer-events:none; transition:opacity .4s ease; }
.social-tile.youtube { background:#fff0e9; border-color:#ffcec0; }
.social-tile.youtube:before { background:radial-gradient(ellipse at 100% 100%,#ffd1bd,transparent 55%); }
.social-tile.instagram { --social-accent:#fff0ac; --tile-ink:#fff; background:linear-gradient(150deg,#e9672c 0%,#d34343 34%,#b12d79 60%,#6437b4 100%); border-color:rgba(255,202,167,.4); }
.social-tile.instagram:before { background:radial-gradient(ellipse at 100% 0%,rgba(255,207,99,.7),transparent 45%),radial-gradient(ellipse at 0% 100%,rgba(91,40,194,.7),transparent 60%); }
.social-tile-top,.social-tile-bottom,.social-art { position:relative; z-index:1; }
.social-tile-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.social-mark { display:grid; place-items:center; width:45px; height:45px; flex-shrink:0; border-radius:13px; transition:transform .35s ease; }
.youtube-mark { background:#ff0033; color:#fff; box-shadow:0 5px 16px rgba(215,0,37,.18); }
.instagram-mark { background:#fff7ee; color:#aa286a; box-shadow:0 5px 18px rgba(74,10,83,.18); }
.social-mark svg { width:24px; height:24px; fill:currentColor; }
.instagram-mark svg { fill:none; stroke:currentColor; stroke-width:1.7; }
.instagram-mark .insta-dot { fill:currentColor; stroke:none; }
.social-status { display:flex; align-items:center; gap:8px; padding:9px 12px; border:1px solid rgba(116,35,28,.15); border-radius:99px; background:rgba(255,255,255,.65); color:#7c3436; font:500 8px 'DM Mono',monospace; letter-spacing:.1em; }
.instagram .social-status { border-color:rgba(255,255,255,.22); background:rgba(70,13,65,.4); color:#fff8f0; }
.social-status i { width:6px; height:6px; border-radius:50%; background:var(--social-accent); }
.social-art { position:relative; display:grid; place-items:center; min-height:235px; overflow:hidden; border:1px solid rgba(255,255,255,.3); border-radius:11px; }
.social-art-note { position:absolute; z-index:2; left:15px; bottom:12px; color:rgba(255,255,255,.88); font:500 7px 'DM Mono',monospace; letter-spacing:.12em; }
.youtube-art { background:linear-gradient(135deg,#ff4838,#f00635 65%,#c80037); }
.youtube-art:after { content:""; position:absolute; inset:0; background-image:radial-gradient(rgba(255,255,255,.35) .7px,transparent .8px); background-size:15px 15px; opacity:.35; pointer-events:none; }
.yt-orbit { position:absolute; width:240px; height:240px; border:1px solid rgba(255,255,255,.28); border-radius:50%; transition:transform .8s cubic-bezier(.2,.7,.25,1); }
.yt-orbit-one { transform:scaleX(1.5) rotate(-24deg); }
.yt-orbit-two { width:160px; height:160px; border-color:rgba(255,231,193,.48); transform:scaleX(1.6) rotate(36deg); }
.yt-screen { position:relative; z-index:1; width:80%; max-width:400px; aspect-ratio:16/9; overflow:hidden; border:2px solid rgba(255,255,255,.85); border-radius:9px; background:#131b2a; box-shadow:0 16px 30px rgba(92,0,25,.3); transform:rotate(-3deg); transition:transform .45s cubic-bezier(.2,.7,.25,1),box-shadow .45s ease; }
.yt-screen:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(11,16,33,.85),rgba(11,16,33,.1)),linear-gradient(0deg,rgba(11,16,33,.65),transparent 40%); }
.yt-thumbnail { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .65s ease; }
.yt-screen > span,.yt-screen small,.yt-screen strong,.yt-screen b { position:absolute; z-index:1; }
.yt-screen > span,.yt-screen small { left:13px; color:#fff; font:500 7px 'DM Mono',monospace; letter-spacing:.09em; }
.yt-screen > span { top:12px; }
.yt-screen small { bottom:12px; color:#baf3ff; }
.yt-screen strong { top:34%; left:13px; color:#fff; font-size:clamp(21px,2.5vw,35px); letter-spacing:-.055em; line-height:.96; }
.yt-screen b { right:14px; bottom:18px; display:grid; place-items:center; width:44px; height:44px; padding-left:3px; border-radius:50%; background:#ff0033; color:#fff; font-size:15px; box-shadow:0 5px 20px rgba(0,0,0,.2); transition:transform .35s ease; }
.social-tile-bottom { display:flex; flex-direction:column; align-items:flex-start; gap:17px; min-width:0; }
.social-kicker { margin:0 0 10px; color:var(--social-accent); font:500 9px 'DM Mono',monospace; letter-spacing:.09em; text-transform:uppercase; }
.social-tile h3 { margin:0 0 13px; color:inherit; font-size:clamp(2.7rem,4.4vw,4.6rem); line-height:.9; letter-spacing:-.08em; }
.social-desc { max-width:440px; margin:0; color:#75434a; font-size:13px; line-height:1.6; }
.instagram .social-desc { color:#fff2ed; }
.social-topics { display:flex; flex-wrap:wrap; gap:7px; margin:0; padding:0; list-style:none; }
.social-topics li { padding:7px 9px; border:1px solid rgba(137,45,39,.19); border-radius:6px; background:rgba(255,255,255,.45); color:#7b3339; font:500 8px 'DM Mono',monospace; line-height:1.3; }
.social-topics li:before { content:"+"; margin-right:5px; color:var(--social-accent); }
.instagram .social-topics li { border-color:rgba(255,255,255,.25); background:rgba(55,14,80,.23); color:#fff; }
.social-cta { display:flex; align-items:center; justify-content:space-between; gap:25px; width:100%; margin-top:3px; padding:13px 16px; border-radius:8px; background:#d91427; color:#fff; font:500 10px 'DM Mono',monospace; transition:background-color .25s ease,box-shadow .25s ease; }
.social-cta b { font-size:19px; font-weight:400; transition:transform .25s ease; }
.instagram .social-cta { background:#fff5e5; color:#6b298a; }
.insta-art { background:rgba(255,255,255,.13); }
.insta-note { position:absolute; display:flex; flex-direction:column; justify-content:space-between; width:32%; height:74%; padding:12px; border:1px solid rgba(255,255,255,.65); border-radius:7px; color:#38234f; box-shadow:0 12px 25px rgba(63,5,79,.22); transition:transform .5s cubic-bezier(.2,.7,.25,1),box-shadow .4s ease; }
.insta-note span { color:inherit; opacity:.7; font:500 6px 'DM Mono',monospace; letter-spacing:.06em; }
.insta-note img { width:100%; min-height:0; flex:1; margin:4px 0; object-fit:contain; }
.insta-note b { font-size:clamp(13px,1.7vw,22px); line-height:.94; letter-spacing:-.06em; }
.insta-note i { align-self:center; color:#ffd374; font-size:clamp(35px,5vw,65px); line-height:1; font-style:normal; transition:transform .55s ease; }
.note-one { left:6%; top:12%; transform:rotate(-9deg); background:#fff1d8; }
.note-two { z-index:2; left:34%; top:6%; transform:rotate(4deg); background:#5935a7; color:#fff; }
.note-three { right:6%; top:15%; transform:rotate(9deg); background:#a9f1ed; color:#254054; }
.social-tile:focus-visible { outline:3px solid var(--social-accent); outline-offset:5px; transform:translateY(-5px); }
@media (hover:hover) {
  .social-tile.is-visible:hover { transform:translateY(-7px); box-shadow:0 24px 60px rgba(0,0,0,.25); transition-delay:0s; }
  .social-tile.is-visible:hover:before { opacity:1; }
  .social-tile.is-visible:hover .social-mark { transform:rotate(-8deg) scale(1.08); }
  .social-tile.is-visible:hover .yt-orbit-one { transform:scaleX(1.5) rotate(8deg); }
  .social-tile.is-visible:hover .yt-orbit-two { transform:scaleX(1.6) rotate(-9deg); }
  .social-tile.is-visible:hover .yt-screen { transform:rotate(0) scale(1.035); box-shadow:0 20px 40px rgba(92,0,25,.38); }
  .social-tile.is-visible:hover .yt-thumbnail { transform:scale(1.07); }
  .social-tile.is-visible:hover .yt-screen b { transform:scale(1.13); }
  .social-tile.is-visible:hover .note-one { transform:translate(-5px,3px) rotate(-14deg); }
  .social-tile.is-visible:hover .note-two { transform:translateY(-5px) rotate(0); box-shadow:0 18px 35px rgba(63,5,79,.32); }
  .social-tile.is-visible:hover .note-two i { transform:rotate(35deg); }
  .social-tile.is-visible:hover .note-three { transform:translate(5px,3px) rotate(14deg); }
  .social-tile.is-visible:hover .social-cta b { transform:translate(3px,-3px); }
  .youtube.is-visible:hover .social-cta { background:#b40722; }
  .instagram.is-visible:hover .social-cta { background:#fff0c5; }
}
@media (max-width:720px) {
  .social-section { padding:0 22px 38px; }
  .social-intro { display:block; margin-bottom:27px; }
  .social-intro h2 { font-size:clamp(2.6rem,11vw,4rem); }
  .social-intro > p { margin-top:16px; font-size:12px; }
  .social-grid { grid-template-columns:1fr; gap:18px; }
  .social-tile { min-height:0; padding:19px; gap:20px; grid-template-rows:auto 210px auto; }
  .social-art { min-height:210px; }
  .social-mark { width:39px; height:39px; border-radius:11px; }
  .social-status { font-size:7px; padding:8px 9px; }
  .social-tile h3 { font-size:2.9rem; }
  .social-kicker { font-size:8px; }
  .social-desc { font-size:12px; }
  .social-topics li { font-size:7px; }
  .social-cta { font-size:9px; }
  .yt-screen strong { font-size:clamp(20px,6vw,29px); }
  .yt-screen > span,.yt-screen small { font-size:6px; left:10px; }
  .yt-screen > span { top:9px; }.yt-screen small { bottom:9px; }
  .yt-screen strong { left:10px; }
  .yt-screen b { width:35px; height:35px; right:10px; bottom:13px; font-size:12px; }
  .insta-note { padding:9px; }
  .insta-note b { font-size:clamp(13px,4vw,19px); }
  .insta-note i { font-size:42px; }
  .social-art-note { font-size:6px; left:12px; }
}
