:root { --ink:#08070b; --ink-soft:#121016; --teal:#322937; --cyan:#b083ff; --mint:#edc184; --lime:#edc184; --gold:#edc184; --purple:#b083ff; --paper:#faf6ef; --paper-deep:#ede6e0; --white:#fff; --muted:#635b6c; --line:rgba(8,7,11,.16); --radius:1.35rem; --shadow:0 22px 60px rgba(7,22,32,.14); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size:16px; line-height:1.58; text-rendering:optimizeLegibility; }
body.menu-open { overflow:hidden; }
a { color:inherit; text-underline-offset:.18em; }
button, input, textarea { font:inherit; }
button { cursor:pointer; }
img { max-width:100%; display:block; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { line-height:1; letter-spacing:-.05em; }
h1 { font-size:clamp(3rem, 7.1vw, 6.9rem); max-width:13ch; margin-bottom:1.5rem; }
h2 { font-size:clamp(2.15rem, 4.2vw, 4.3rem); max-width:15ch; margin-bottom:1.25rem; }
h3 { font-size:1.3rem; margin-bottom:.65rem; }
p { margin-bottom:1.1rem; }
small { font-size:.77rem; line-height:1.4; }
.shell { width:min(1180px, calc(100% - 3rem)); margin-inline:auto; }
.narrow { width:min(870px, calc(100% - 3rem)); }
.skip-link { position:absolute; top:-4rem; left:1rem; z-index:100; padding:.7rem 1rem; background:var(--mint); color:var(--ink); font-weight:800; }
.skip-link:focus { top:1rem; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.site-header { position:sticky; top:0; z-index:20; background:rgba(8,7,11,.94); color:#f8faf6; border-bottom:1px solid rgba(255,255,255,.12); backdrop-filter:blur(12px); }
.header-inner { min-height:75px; display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.brand { display:inline-flex; align-items:center; gap:.7rem; color:inherit; text-decoration:none; font-size:1rem; font-weight:850; letter-spacing:-.04em; white-space:nowrap; }
.brand-mark { position:relative; width:25px; height:25px; display:inline-flex; align-items:flex-end; gap:3px; transform:skewX(-9deg); }
.brand-mark i { display:block; width:6px; background:var(--cyan); border-radius:99px 99px 2px 2px; }
.brand-mark i:nth-child(1){height:11px}.brand-mark i:nth-child(2){height:21px;background:var(--mint)}.brand-mark i:nth-child(3){height:15px}
.site-nav { display:flex; align-items:center; gap:1.85rem; font-weight:650; font-size:.92rem; }
.site-nav a { text-decoration:none; opacity:.78; padding:.5rem 0; position:relative; }
.site-nav a:hover,.site-nav a[aria-current="page"] { opacity:1; }
.site-nav a[aria-current="page"]::after { content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:var(--mint); }
.menu-toggle { display:none; width:44px; height:44px; border:1px solid rgba(255,255,255,.28); background:transparent; color:var(--white); border-radius:50%; }
.menu-toggle span[aria-hidden] { display:block; width:17px; height:1px; background:currentColor; margin:5px auto; transition:transform .2s ease; }
.eyebrow { color:var(--teal); font-size:.74rem; line-height:1.2; font-weight:850; text-transform:uppercase; letter-spacing:.15em; margin-bottom:1.15rem; }
.section-dark .eyebrow,.hero .eyebrow,.product-hero .eyebrow { color:var(--cyan); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:.55rem; min-height:48px; padding:.77rem 1.1rem; border:1px solid transparent; border-radius:99px; text-decoration:none; font-size:.9rem; font-weight:820; transition:transform .18s ease,background .18s ease,border-color .18s ease; }
.button:hover { transform:translateY(-2px); }
.button--primary { background:var(--ink); color:var(--mint); }
.button--primary:hover { background:#322937; }
.button--mint { background:var(--mint); color:var(--ink); }
.button--quiet { background:transparent; border-color:var(--line); color:var(--ink); }
.button--quiet:hover { background:rgba(8,7,11,.06); }
.button--outline-light { color:var(--white); border-color:rgba(255,255,255,.45); }
.button--outline-light:hover { background:rgba(255,255,255,.1); }
.button--outline-dark { color:var(--ink); border-color:var(--line); }
.text-link { display:inline-flex; align-items:center; gap:.35rem; color:inherit; font-weight:800; text-decoration-thickness:1px; }
.hero { overflow:hidden; position:relative; background:var(--ink); color:var(--white); min-height:720px; display:flex; align-items:center; }
.hero-gridline { position:absolute; inset:0; pointer-events:none; opacity:.62; background-image:linear-gradient(rgba(176,131,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(176,131,255,.1) 1px,transparent 1px); background-size:clamp(64px, 10vw, 136px) clamp(64px, 10vw, 136px); mask-image:radial-gradient(circle at 72% 48%,black,transparent 60%); }
.hero::after { content:""; position:absolute; width:760px; height:760px; right:-230px; top:-160px; border:1px solid rgba(237,193,132,.2); border-radius:50%; box-shadow:0 0 0 80px rgba(237,193,132,.025),0 0 0 160px rgba(176,131,255,.025); }
.hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.14fr .86fr; gap:4rem; align-items:center; padding:7.5rem 0 6rem; }
.hero-copy { max-width:700px; }
.hero-lede,.lede { font-size:clamp(1.08rem, 1.6vw, 1.34rem); line-height:1.55; max-width:49ch; color:rgba(255,255,255,.78); }
.page-hero .lede { color:var(--muted); }
.hero-actions { display:flex; flex-wrap:wrap; gap:.85rem; margin:2rem 0; }
.hero .button--quiet { color:var(--white); border-color:rgba(255,255,255,.35); }
.hero .button--quiet:hover { background:rgba(255,255,255,.08); }
.hero-promises { list-style:none; padding:0; display:flex; flex-wrap:wrap; gap:.5rem 1.2rem; margin:1.6rem 0 0; font-size:.8rem; color:var(--cyan); font-weight:750; }
.hero-promises li::before { content:"•"; margin-right:.45rem; color:var(--lime); }
.hero-character { position:relative; justify-self:end; width:min(100%, 430px); padding:1rem 0 2rem; }
.mascot-card { position:relative; margin:0; min-height:425px; display:grid; place-items:center; border:1px solid rgba(176,131,255,.3); border-radius:52% 48% 42% 58% / 44% 50% 50% 56%; overflow:hidden; background:linear-gradient(145deg,#322039,#08070b 70%); box-shadow:inset 0 0 80px rgba(176,131,255,.08); }
.mascot-card img { position:absolute; z-index:1; inset:0; width:100%; height:100%; object-fit:cover; object-position:right center; filter:drop-shadow(0 25px 30px rgba(0,0,0,.27)); }
.mascot-aura { position:absolute; width:250px; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,var(--mint),rgba(237,193,132,.05) 61%, transparent 67%); filter:blur(.2px); opacity:.76; }
.mascot-card figcaption { position:absolute; z-index:2; left:1.1rem; bottom:1.1rem; padding:.45rem .7rem; background:rgba(8,7,11,.76); border:1px solid rgba(255,255,255,.18); border-radius:99px; color:var(--white); font-size:.72rem; font-weight:750; backdrop-filter:blur(8px); }
.mascot-dot { display:inline-block; width:7px; height:7px; margin-right:.25rem; background:var(--lime); border-radius:50%; }
.signal-card { position:absolute; z-index:3; right:-1.4rem; bottom:0; max-width:215px; display:flex; gap:.65rem; align-items:flex-start; padding:.8rem 1rem; background:var(--mint); color:var(--ink); border-radius:.9rem; box-shadow:var(--shadow); font-size:.78rem; line-height:1.45; }
.signal-light { flex:0 0 auto; width:9px; height:9px; margin-top:.25rem; border-radius:50%; background:var(--purple); box-shadow:0 0 0 4px rgba(115,80,161,.16); }
.brand-banner { overflow:hidden; max-height:260px; background:#08070b; border-block:1px solid rgba(230,185,102,.45); }.brand-banner img { width:100%; min-height:150px; max-height:260px; object-fit:cover; object-position:center; }
.section { padding:clamp(4.5rem, 8vw, 8.5rem) 0; }
.paper-section { background:var(--paper); }
.section-dark { background:var(--ink); color:var(--white); }
.split-intro { display:grid; grid-template-columns:.94fr 1.06fr; gap:5rem; }
.section-intro > p { color:var(--muted); max-width:53ch; font-size:1.05rem; }
.principles { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; align-self:end; }
.principles article { padding:1.45rem 1.35rem; border-top:2px solid var(--teal); background:rgba(255,255,255,.55); }
.principles span { color:var(--teal); font-weight:900; font-size:.8rem; }
.principles p { margin-bottom:0; font-size:.9rem; color:var(--muted); }
.software-section { background:#eee8f2; }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.product-card { display:flex; flex-direction:column; min-height:320px; padding:1.55rem; background:var(--white); border:1px solid rgba(8,7,11,.1); border-radius:1rem; box-shadow:0 3px 0 rgba(8,7,11,.04); transition:transform .2s ease,box-shadow .2s ease; }
.product-card:hover { transform:translateY(-5px); box-shadow:0 19px 38px rgba(8,7,11,.13); }
.product-card-top { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:.4rem; margin-bottom:1.7rem; }
.product-category { color:var(--teal); font-size:.72rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.status { display:inline-flex; align-items:center; padding:.25rem .55rem; border:1px solid rgba(50,41,55,.24); border-radius:99px; color:var(--teal); background:#f7efdf; font-size:.69rem; font-weight:800; line-height:1; }
.product-card h3 { font-size:1.8rem; }
.product-card h3 a { text-decoration:none; }
.product-card h3 a:hover { text-decoration:underline; }
.product-tagline { min-height:2.8em; font-weight:730; line-height:1.4; }
.product-card > p:not(.product-tagline) { color:var(--muted); font-size:.9rem; }
.product-card-bottom { display:flex; justify-content:space-between; gap:.5rem; align-items:center; margin-top:auto; padding-top:1.25rem; border-top:1px solid var(--line); color:var(--muted); font-size:.75rem; }
.product-card-bottom a { color:var(--ink); font-weight:800; text-decoration:none; }
.section-action { margin-top:2rem; }
.workflow-section .section-intro > p { color:rgba(255,255,255,.7); }
.system-map { display:grid; grid-template-columns:1fr 100px 1fr 100px 1fr; gap:.7rem; align-items:center; margin:3.25rem 0 1.5rem; }
.system-node { min-height:170px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:1.3rem; border:1px solid rgba(255,255,255,.24); border-radius:1rem; background:rgba(255,255,255,.05); }
.system-node--core { background:var(--cyan); color:var(--ink); border-color:var(--cyan); }
.node-icon { display:grid; place-items:center; width:34px; height:34px; margin-bottom:1.15rem; border:1px solid currentColor; border-radius:50%; font-size:.68rem; font-weight:900; }
.system-node strong { font-size:1.15rem; letter-spacing:-.03em; }.system-node small { color:inherit; opacity:.75; }
.system-connector { display:flex; gap:.35rem; justify-content:center; }.system-connector i { display:block; width:6px; height:6px; border-radius:50%; background:var(--lime); }.system-connector i:nth-child(2){opacity:.55}.system-connector i:nth-child(3){opacity:.2}
.workflow-notes { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-bottom:2rem; }.workflow-notes p { padding-left:1rem; border-left:2px solid var(--cyan); color:rgba(255,255,255,.76); font-size:.89rem; }.workflow-notes b { display:block; color:var(--white); }
.film-section { border-top:1px solid rgba(255,255,255,.13); }.film-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:5rem; align-items:center; }.film-section h2 { max-width:12ch; }.film-section p:not(.eyebrow) { color:rgba(255,255,255,.72); }
.video-frame { position:relative; min-height:370px; overflow:hidden; border:1px solid rgba(255,255,255,.22); border-radius:1rem; background:#121016; }.video-frame>img,.video-frame>iframe { position:absolute; inset:0; width:100%; height:100%; border:0; object-fit:cover; }.video-art { position:absolute; inset:0; overflow:hidden; background:linear-gradient(132deg,#322039,#08070b); }.video-art span { position:absolute; display:block; border-radius:50%; border:1px solid rgba(237,193,132,.45); }.video-art span:nth-child(1){width:330px;height:330px;left:4%;top:8%;}.video-art span:nth-child(2){width:220px;height:220px;right:4%;bottom:-16%;border-color:var(--cyan)}.video-art span:nth-child(3){width:460px;height:110px;left:22%;top:39%;border-radius:99px;transform:rotate(-32deg);background:rgba(176,131,255,.11);border:0}.video-consent { position:absolute; z-index:1; inset:auto 1.2rem 1.2rem; max-width:380px; padding:1.3rem; background:rgba(8,7,11,.88); color:var(--white); border:1px solid rgba(255,255,255,.16); border-radius:.85rem; backdrop-filter:blur(10px); }.video-consent p:not(.eyebrow) { margin-bottom:1rem; color:var(--white); font-weight:700; }.video-consent small { display:block; margin-top:.9rem; color:rgba(255,255,255,.66); }
.process-section .shell { display:grid; grid-template-columns:.95fr 1.05fr; column-gap:5rem; }.process-list { display:grid; gap:0; padding:0; margin:0 0 2rem; list-style:none; }.process-list li { display:grid; grid-template-columns:54px 1fr; gap:1rem; padding:1.2rem 0; border-top:1px solid var(--line); }.process-list li:last-child{border-bottom:1px solid var(--line)}.process-list span { color:var(--teal); font-weight:900; }.process-list h3 { margin-bottom:.35rem; }.process-list p { margin:0;color:var(--muted); }
.page-hero { padding:clamp(5rem, 11vw, 9rem) 0 clamp(4rem, 7vw, 6.5rem); background:linear-gradient(130deg,#f1e5d4,#faf6ef 59%,#eadcf9); }.page-hero h1 { max-width:12ch; }.page-hero--software { background:linear-gradient(130deg,#eee4fa,#faf6ef 68%,#f2dfc2); }.page-hero--company { background:linear-gradient(130deg,#f1e5d4,#faf6ef 62%,#eadcf9); }.page-hero--contact { background:linear-gradient(130deg,#f1e5d4,#faf6ef 65%,#eadcf9); }
.breadcrumb { display:flex; flex-wrap:wrap; gap:.55rem; margin-bottom:2.8rem; color:var(--muted); font-size:.8rem; }.breadcrumb a { color:inherit; }
.cta-band { display:flex; justify-content:space-between; gap:2rem; align-items:center; }.cta-band h2 { max-width:17ch; margin-bottom:0; }.cta-band .eyebrow { margin-bottom:.75rem; }
.product-hero { padding:4rem 0 5rem; background:var(--ink); color:var(--white); }.product-hero .breadcrumb { color:rgba(255,255,255,.65); }.product-hero-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:4rem; align-items:end; }.product-hero h1 { margin:.4rem 0 1rem; }.product-hero-tagline { font-size:1.35rem; font-weight:700; max-width:31ch; }.product-facts { padding:1.5rem; border:1px solid rgba(255,255,255,.2); border-radius:1rem; background:rgba(255,255,255,.05); }.product-facts .eyebrow{margin-bottom:1.2rem}.product-facts dl{margin:0}.product-facts dl>div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-top:1px solid rgba(255,255,255,.16);font-size:.86rem}.product-facts dt{color:rgba(255,255,255,.65)}.product-facts dd{margin:0;text-align:right;font-weight:700}
.product-reading { display:grid; grid-template-columns:1.05fr .95fr; gap:5rem; }.product-prose h2{font-size:2.35rem}.product-prose p{color:var(--muted);font-size:1.04rem}.notice{margin-top:2rem;padding:1.2rem 1.35rem;border-left:4px solid var(--teal);background:#f3e8d8}.notice p{margin:0;font-size:.91rem;color:var(--ink)}.feature-stack{display:grid;gap:.75rem}.feature-item{padding:1.35rem;border:1px solid var(--line);border-radius:.8rem;background:rgba(255,255,255,.52)}.feature-item h3{font-size:1.2rem}.feature-item p{margin:0;color:var(--muted);font-size:.9rem}
.product-detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }.info-list { padding:1.6rem; border-top:3px solid var(--teal); background:var(--white); }.info-list h2{font-size:1.65rem}.info-list ul{padding:0;margin:1.15rem 0 0;list-style:none}.info-list li{position:relative;padding:.7rem 0 .7rem 1.1rem;border-top:1px solid var(--line);font-size:.93rem;color:var(--muted)}.info-list li::before{content:"";position:absolute;left:0;top:1.15rem;width:5px;height:5px;border-radius:50%;background:var(--lime)}.related-section{background:#eee8f2}
.story-grid,.company-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:5rem; align-items:start; }.story-grid p,.company-grid p{color:var(--muted);font-size:1.03rem}.callout-card { padding:2rem; background:var(--ink);color:var(--white);border-radius:1rem }.callout-card ol{margin:0;padding-left:1.25rem}.callout-card li{padding:.7rem 0;border-top:1px solid rgba(255,255,255,.2)}.delivery-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }.delivery-grid article{padding:1.4rem;border-top:2px solid var(--cyan);background:#eee8f2}.delivery-grid span{display:block;margin-bottom:2rem;color:var(--teal);font-size:.8rem;font-weight:900}.delivery-grid p{color:var(--muted);font-size:.9rem;margin:0}
.company-grid .mascot-card{max-width:360px;min-height:350px;background:var(--teal)}.caption{font-size:.8rem!important;margin-top:.8rem}.company-pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:2rem}.company-pillars article{padding:1.15rem;border:1px solid var(--line);background:rgba(255,255,255,.55)}.company-pillars h3{font-size:1.1rem}.company-pillars p{font-size:.86rem;margin:0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}.brief-panel,.brief-output{padding:clamp(1.3rem,3vw,2.25rem);background:var(--white);border:1px solid var(--line);border-radius:1rem}.brief-panel h2{font-size:2.3rem}.brief-panel>p:not(.eyebrow){color:var(--muted)}.brief-panel form{display:grid;gap:1rem;margin-top:1.5rem}.brief-panel label,.brief-output>label{display:grid;gap:.4rem;font-size:.8rem;font-weight:760}.brief-panel input,.brief-panel textarea,.brief-output textarea{width:100%;padding:.75rem .85rem;border:1px solid rgba(8,7,11,.28);border-radius:.55rem;background:#fafaf7;color:var(--ink);line-height:1.45;resize:vertical}.brief-panel input:focus,.brief-panel textarea:focus,.brief-output textarea:focus{outline:3px solid rgba(176,131,255,.55);outline-offset:1px}.brief-output textarea{margin-top:.75rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.77rem}.brief-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.form-status{min-height:1.6em;margin:.85rem 0 0;color:var(--teal);font-size:.85rem;font-weight:700}.connect-band{display:flex;justify-content:space-between;gap:2rem;align-items:end}.connect-band p:not(.eyebrow){max-width:48ch;color:var(--muted)}.connect-actions{display:flex;flex-wrap:wrap;gap:.7rem}.prose-page{max-width:780px}.prose-page h2{margin-top:3rem;font-size:2rem}.prose-page p{color:var(--muted);font-size:1.03rem}.not-found{min-height:65vh;display:flex;align-items:center;padding:5rem 0;background:linear-gradient(135deg,#eee8f2,#faf6ef)}
.site-footer{padding:4rem 0 1.5rem;background:#08070b;color:rgba(255,255,255,.76)}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .7fr;gap:3rem}.brand--footer{color:var(--white);margin-bottom:1rem}.footer-grid>div>p:not(.eyebrow){max-width:35ch;font-size:.9rem}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;font-size:.88rem}.footer-links .eyebrow{color:var(--cyan);margin-bottom:.3rem}.footer-links a{color:rgba(255,255,255,.8)}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding-top:3rem;margin-top:3rem;border-top:1px solid rgba(255,255,255,.12);font-size:.75rem;color:rgba(255,255,255,.48)}
@media (max-width:900px){.hero{min-height:0}.hero-grid,.film-grid,.story-grid,.company-grid,.product-reading,.split-intro{grid-template-columns:1fr;gap:3rem}.hero-character{justify-self:center;width:min(100%,390px)}.principles{max-width:740px}.system-map{grid-template-columns:1fr;gap:.5rem}.system-connector{transform:rotate(90deg);min-height:44px}.system-node{min-height:130px}.workflow-notes{grid-template-columns:1fr}.process-section .shell{grid-template-columns:1fr;gap:2rem}.product-hero-grid{grid-template-columns:1fr;gap:2rem}.product-facts{max-width:480px}.delivery-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.product-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.shell,.narrow{width:min(100% - 2rem,1180px)}.site-header{position:relative}.header-inner{min-height:68px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:1rem;align-items:stretch;background:var(--ink);border-bottom:1px solid rgba(255,255,255,.15);box-shadow:0 15px 30px rgba(0,0,0,.18)}.site-nav.is-open{display:flex;flex-direction:column}.site-nav a{padding:.8rem .3rem}.hero-grid{padding:4.5rem 0}.hero::after{right:-410px;top:-300px}.hero h1{font-size:clamp(3rem,13vw,4.45rem)}.mascot-card{min-height:330px}.mascot-card img{max-height:300px}.signal-card{right:-.3rem}.product-grid,.principles,.delivery-grid,.product-detail-grid,.company-pillars,.contact-grid{grid-template-columns:1fr}.product-card{min-height:0}.section{padding:4rem 0}.cta-band,.connect-band{align-items:flex-start;flex-direction:column}.video-frame{min-height:350px}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.page-hero{padding:4rem 0}.product-hero{padding:3rem 0 4rem}.brief-panel,.brief-output{padding:1.25rem}.hero-actions .button{width:100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.product-card,.menu-toggle span[aria-hidden]{transition:none}.button:hover,.product-card:hover{transform:none}}

/* Original Easy Agent identity, with calm reading surfaces. */
h1,h2 {font-family:Impact, 'Arial Narrow', ui-sans-serif, sans-serif; font-weight:400; letter-spacing:-.025em;}
.hero {background:radial-gradient(ellipse at 90% 15%,#322039 0,transparent 50%),#08070b;}
.mascot-card {border-radius:1.25rem;background:#08070b;min-height:500px;}
.mascot-card img {object-fit:cover;object-position:right center;max-height:none;}
.company-grid .mascot-card {min-height:400px;}
.film-section {padding:6rem 0;}
.video-frame {min-height:0;aspect-ratio:16/9;background:#08070b;}
.video-frame video {display:block;width:100%;height:100%;object-fit:contain;}
.film-section details {font-size:.88rem;color:#b1a8b8;}
.film-section summary {cursor:pointer;color:#edc184;margin-block:1rem;}
.capability-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
.capability-grid article {padding:2rem;border:1px solid var(--line);border-radius:1rem;background:#fff;}
.capability-grid p {color:var(--muted);margin:0;}
:focus-visible {outline:3px solid #b083ff;outline-offset:4px;}
.hero .button--primary {background:#edc184;color:#08070b;}
.hero .button--primary:hover {background:#f5d5a7;}
@media(max-width:640px){.mascot-card{min-height:370px;}.capability-grid{grid-template-columns:1fr;}.film-section{padding:4rem 0;}.video-frame{min-height:0;}.mascot-card img{max-height:none;}}
