:root{
  --ink:#0b1113;--navy:#07131c;--navy-2:#0b1f2c;--paper:#f5f3ed;--white:#fff;
  --blue:#0568c9;--green:#5aa62e;--orange:#f05a22;--muted:#5d6873;--line:#d9ddd9;
  --max:1180px;--radius:26px;--serif:Georgia,'Times New Roman',serif;
  --sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6}
a{color:inherit}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:99;background:#fff;padding:10px 14px}
.site-header{position:sticky;top:0;z-index:40;background:rgba(245,243,237,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(11,17,19,.12)}
.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-weight:800;letter-spacing:-.02em}.brand-mark{width:38px;height:38px;border:2px solid var(--blue);border-radius:12px;position:relative;display:grid;place-items:center;font-size:17px;color:var(--blue);font-weight:900}.brand-mark:after{content:'';position:absolute;left:7px;right:7px;bottom:5px;height:4px;background:var(--green);border-radius:6px}.brand small{display:block;font-weight:650;font-size:11px;letter-spacing:.12em;color:var(--muted);text-transform:uppercase}.nav{display:flex;align-items:center;gap:26px}.nav a{text-decoration:none;font-size:14px;font-weight:750}.nav a:hover,.nav a[aria-current=page]{color:var(--blue)}.menu-button{display:none;border:0;background:none;font:inherit;font-weight:800}
.hero{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:110px 0 88px;min-height:700px;display:flex;align-items:center}.hero:before{content:'';position:absolute;inset:-30% -15% auto 45%;height:820px;background:radial-gradient(circle at 50% 40%,rgba(5,104,201,.42),transparent 58%);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);gap:72px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:850;color:var(--green);margin:0 0 18px}.hero h1,.page-hero h1{font-family:var(--serif);font-size:clamp(62px,8vw,112px);line-height:.91;letter-spacing:-.055em;margin:0}.hero h1 em{font-weight:400;color:#cbd6dc}.hero .lede{max-width:690px;color:#c9d0d5;font-size:21px;line-height:1.55;margin:30px 0 34px}.button-row{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:10px;padding:14px 19px;border-radius:999px;text-decoration:none;font-weight:800;font-size:14px;border:1px solid transparent}.button.primary{background:var(--blue);color:#fff}.button.secondary{border-color:rgba(255,255,255,.32);color:#fff}.button.light{background:#fff;color:var(--ink)}.button.orange{background:var(--orange);color:#fff}.button:hover{transform:translateY(-1px)}
.hero-system{position:relative;height:520px}.orbit{position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%}.orbit.one{width:480px;height:480px;right:-45px;top:20px}.orbit.two{width:350px;height:350px;right:20px;top:85px}.system-card{position:absolute;border-radius:28px;border:1px solid rgba(255,255,255,.16);box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden}.system-card.process{left:0;top:50px;width:360px;background:#fff;color:var(--ink);padding:30px;transform:rotate(-4deg)}.system-card.practice{right:-6px;bottom:22px;width:315px;background:var(--blue);color:#fff;padding:28px;transform:rotate(5deg)}.system-kicker{font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:850}.system-card h3{font-family:var(--serif);font-size:37px;line-height:1.02;margin:22px 0 16px}.ideal-word{font-size:68px;line-height:1;font-weight:300;letter-spacing:-.07em;color:var(--orange)}.process-row{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-top:24px}.process-row span{height:7px;border-radius:99px;background:#dde3e6}.process-row span:nth-child(-n+3){background:var(--orange)}.practice .m-mark{font-family:var(--serif);font-size:76px;line-height:.8;margin:8px 0 28px}.practice .green-line{height:6px;width:80%;background:var(--green);border-radius:99px;margin-top:22px}
.section{padding:104px 0}.section.white{background:#fff}.section.navy{background:var(--navy);color:#fff}.section.blue{background:var(--blue);color:#fff}.section.orange-tint{background:#fff6ef}.section-header{display:grid;grid-template-columns:.55fr 1.45fr;gap:50px;align-items:start;margin-bottom:52px}.section-header h2{font-family:var(--serif);font-weight:500;font-size:clamp(42px,5vw,68px);line-height:1;letter-spacing:-.04em;margin:0}.section-header p{font-size:20px;color:var(--muted);margin:8px 0 0;max-width:700px}.navy .section-header p,.blue .section-header p{color:#c7d0d5}.kicker{font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:850;color:var(--blue)}.navy .kicker,.blue .kicker{color:#8cc6ff}
.number-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.number-card{position:relative;min-height:270px;padding:88px 28px 34px;border-right:1px solid var(--line);overflow:hidden}.number-card:last-child{border-right:0}.number-card .n{position:absolute;left:19px;top:-28px;font-family:var(--serif);font-size:118px;line-height:1;color:rgba(5,104,201,.10);font-weight:700;letter-spacing:-.07em}.number-card .dot{width:12px;height:12px;background:var(--green);border-radius:50%;box-shadow:0 0 0 10px rgba(90,166,46,.12);margin-bottom:28px}.number-card h3{font-size:22px;margin:0 0 12px}.number-card p{color:var(--muted);margin:0}
.dual{display:grid;grid-template-columns:1fr 1fr;gap:22px}.feature-card{min-height:400px;border-radius:var(--radius);padding:46px;border:1px solid var(--line);position:relative;overflow:hidden}.feature-card h3{font-family:var(--serif);font-size:50px;line-height:1;margin:18px 0 20px}.feature-card p{max-width:560px}.feature-card.ideal-card{background:#fff}.feature-card.ideal-card:after{content:'IDEAL';position:absolute;right:-12px;bottom:-40px;font-size:130px;font-weight:200;letter-spacing:-.08em;color:rgba(240,90,34,.08)}.feature-card.meaningful-card{background:var(--navy);color:#fff;border-color:transparent}.feature-card.meaningful-card:after{content:'M';position:absolute;right:8px;bottom:-60px;font-family:var(--serif);font-size:200px;color:rgba(5,104,201,.22)}.feature-card.meaningful-card p{color:#c6d0d6}.text-link{display:inline-flex;margin-top:20px;font-weight:850;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:3px}
.book-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.book-stage{min-height:520px;border-radius:36px;background:linear-gradient(145deg,#101820,#1e2d38);position:relative;display:grid;place-items:center;overflow:hidden}.book-stage:before{content:'';position:absolute;width:320px;height:320px;background:var(--orange);filter:blur(100px);opacity:.16}.book-image{max-width:78%;max-height:470px;position:relative;z-index:2;filter:drop-shadow(0 30px 38px rgba(0,0,0,.35))}.book-fallback{display:none;position:relative;z-index:2;width:260px;height:380px;background:#faf9f6;border-radius:5px 18px 18px 5px;box-shadow:26px 30px 40px rgba(0,0,0,.35);padding:34px;color:#666;transform:rotate(-6deg)}.book-fallback strong{display:block;color:var(--orange);font-size:55px;letter-spacing:-.06em;margin-top:80px}.book-fallback span{font-size:19px}.book-copy h2{font-family:var(--serif);font-size:64px;line-height:1;letter-spacing:-.045em;margin:10px 0 25px}.book-copy p{color:var(--muted);font-size:19px}.quote-line{font-family:var(--serif);font-size:28px;line-height:1.35;border-left:4px solid var(--orange);padding-left:24px;margin:34px 0}
.layer-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid rgba(255,255,255,.16);border-radius:28px;overflow:hidden}.layer{padding:34px 24px 38px;min-height:300px;border-right:1px solid rgba(255,255,255,.16);position:relative}.layer:last-child{border-right:0}.layer .big-number{font-family:var(--serif);font-size:82px;line-height:1;color:rgba(132,203,97,.33);letter-spacing:-.07em}.layer .indicator{width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 0 9px rgba(90,166,46,.13);margin:12px 0 30px}.layer h3{font-size:22px;margin:0 0 12px}.layer p{color:#bfc9cf;margin:0}
.proof-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:end;margin-top:58px}.proof-copy h2{font-family:var(--serif);font-size:clamp(50px,6vw,78px);line-height:.96;margin:0 0 24px;letter-spacing:-.045em}.proof-copy p{font-size:20px;max-width:610px;color:var(--muted)}.devices{position:relative;height:610px}.monitor{position:absolute;left:0;top:0;width:85%;filter:drop-shadow(0 28px 35px rgba(0,0,0,.24))}.monitor-shell{background:#171b1e;border-radius:24px 24px 10px 10px;padding:14px}.monitor-screen{aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#f1eee5;position:relative}.monitor-stand{width:28%;height:90px;background:linear-gradient(#bfc4c7,#e9ecee);margin:auto;clip-path:polygon(38% 0,62% 0,70% 76%,92% 88%,92% 100%,8% 100%,8% 88%,30% 76%)}.phone{position:absolute;right:0;bottom:0;width:34%;background:#15191c;border-radius:38px;padding:10px;box-shadow:0 28px 55px rgba(0,0,0,.28);z-index:4}.phone-screen{aspect-ratio:9/18.5;border-radius:30px;overflow:hidden;background:#faf9f5;position:relative}.live-frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent}.screen-fallback{position:absolute;inset:0;padding:5%;overflow:hidden}.pm-fallback .tiny-nav{font-size:5px;letter-spacing:.13em;font-weight:900;margin-bottom:5%}.pm-fallback .dark{background:#202522;color:#fff;margin:0 -5%;padding:9% 8%;height:40%}.pm-fallback .dark h4{font-family:var(--serif);font-size:25px;line-height:.95;max-width:65%;margin:0 0 3%}.pm-fallback .dark p{font-size:6px;max-width:55%}.pm-fallback .mini-btn{display:inline-block;background:#be4a2b;padding:5px 8px;font-size:5px}.pm-fallback .white-copy{font-family:var(--serif);font-size:13px;max-width:68%;margin:5% 2%}.pm-fallback .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d8d2c8}.pm-fallback .stats span{background:#f5f1e8;padding:5%;font-size:6px}.ai-fallback{display:grid;align-content:start;padding:18% 10%;text-align:left}.ai-fallback .ideal-mini{font-size:26px;color:var(--orange);font-weight:300}.ai-fallback h4{font-size:21px;line-height:1;margin:12px 0}.ai-fallback p{font-size:7px;color:#666}.ai-fallback .orange-bar{height:18px;width:62%;background:var(--orange);border-radius:4px;margin:12px 0}.ai-fallback .plan-box{height:82px;border:1px solid #ddd;border-radius:8px}.device-label{display:flex;align-items:center;justify-content:space-between;margin-top:14px;font-size:13px;font-weight:800}.device-label a{color:var(--blue)}
.cta-band{background:var(--blue);color:#fff;padding:84px 0}.cta-grid{display:flex;justify-content:space-between;gap:40px;align-items:center}.cta-grid h2{font-family:var(--serif);font-size:54px;line-height:1;margin:0;max-width:720px}.site-footer{background:#060d12;color:#c7d0d5;padding:56px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr .8fr;gap:50px}.footer-brand{color:#fff;font-family:var(--serif);font-size:27px}.footer-nav{display:grid;gap:8px}.footer-nav a{text-decoration:none;font-size:14px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:46px;padding-top:22px;display:flex;justify-content:space-between;font-size:12px;color:#89959d}
.page-hero{background:var(--navy);color:#fff;padding:110px 0 90px}.page-hero h1{font-size:clamp(64px,8vw,106px)}.page-hero .lede{font-size:22px;max-width:760px;color:#c8d1d6}.content-grid{display:grid;grid-template-columns:.62fr 1.38fr;gap:70px}.content-grid h2{font-family:var(--serif);font-size:48px;line-height:1;margin:0}.prose{max-width:780px}.prose p{font-size:18px;color:#3f4a53}.prose h3{font-size:26px;margin-top:38px}.story-timeline{display:grid;gap:0;border-top:1px solid var(--line)}.timeline-row{display:grid;grid-template-columns:130px 1fr;gap:32px;padding:34px 0;border-bottom:1px solid var(--line)}.timeline-row .year{font-family:var(--serif);font-size:44px;color:var(--blue)}.timeline-row p{margin:6px 0;color:var(--muted)}.ideal-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:35px}.ideal-step{border-radius:20px;border:1px solid var(--line);padding:28px 22px;background:#fff;min-height:250px}.ideal-step .letter{font-size:55px;font-weight:300;color:var(--orange);line-height:1}.ideal-step h3{margin:24px 0 10px}.simple-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px}.contact-card{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card a{font-size:28px;font-family:var(--serif);color:var(--blue)}.legal{max-width:820px;margin:auto}.legal h1{font-family:var(--serif);font-size:64px}.legal h2{font-size:24px;margin-top:42px}.legal p,.legal li{color:#4d5861}.note{padding:18px 20px;border-left:4px solid var(--orange);background:#fff6ef;color:#5b4b42}
@media(max-width:900px){.container{width:min(100% - 30px,var(--max))}.nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:24px 30px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.nav.open{display:flex}.menu-button{display:block}.hero{padding:86px 0 70px}.hero-grid,.section-header,.book-grid,.proof-grid,.content-grid{grid-template-columns:1fr}.hero-system{height:430px}.system-card.process{width:72%}.system-card.practice{width:60%}.number-grid,.layer-grid{grid-template-columns:1fr 1fr}.number-card:nth-child(2){border-right:0}.dual{grid-template-columns:1fr}.proof-grid{gap:22px}.devices{height:520px}.cta-grid{align-items:flex-start;flex-direction:column}.ideal-steps{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){body{font-size:16px}.header-inner{height:70px}.brand small{display:none}.hero{min-height:auto}.hero h1{font-size:64px}.hero .lede{font-size:18px}.hero-grid{gap:40px}.hero-system{height:340px}.system-card.process{width:78%;padding:20px}.system-card.practice{width:62%;padding:20px}.system-card h3{font-size:28px}.ideal-word{font-size:50px}.section{padding:72px 0}.section-header h2{font-size:46px}.number-grid,.layer-grid,.ideal-steps{grid-template-columns:1fr}.number-card,.layer{border-right:0;border-bottom:1px solid var(--line)}.layer{border-color:rgba(255,255,255,.16)}.feature-card{padding:32px;min-height:340px}.feature-card h3{font-size:42px}.book-copy h2{font-size:48px}.book-stage{min-height:390px}.devices{height:390px}.monitor{width:96%}.phone{width:38%}.proof-copy h2{font-size:50px}.cta-grid h2{font-size:42px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.contact-card{grid-template-columns:1fr}.timeline-row{grid-template-columns:85px 1fr}.page-hero{padding:80px 0 60px}.page-hero h1{font-size:64px}.legal h1{font-size:48px}}

/* V5 approved production imagery */
.finished-devices{height:610px;position:relative;overflow:visible}
.device-art{position:absolute;display:block;text-decoration:none;transition:transform .22s ease;filter:drop-shadow(0 28px 35px rgba(0,0,0,.18))}
.device-art:hover{transform:translateY(-4px)}
.device-art img{display:block;width:100%;height:auto}
.device-art span{display:block;margin-top:-16px;font-size:13px;font-weight:800;color:var(--ink);text-align:center}
.project-device{width:94%;left:-10%;top:10px}
.ideal-device{width:47%;right:-8%;bottom:-8px;z-index:4}
.book-stage{background:#f4f5f3;border:1px solid var(--line)}
.book-stage:before{background:var(--orange);opacity:.08}
.book-image{max-width:92%;max-height:490px;filter:none}
@media(max-width:900px){.finished-devices{height:520px}.project-device{width:86%;left:-4%;top:5px}.ideal-device{width:43%;right:-2%;bottom:0}}
@media(max-width:600px){.finished-devices{height:390px}.project-device{width:96%;left:-8%;top:6px}.ideal-device{width:48%;right:-8%;bottom:4px}.device-art span{font-size:11px;margin-top:-12px}}

/* Homepage-only navigation and contact, October 2026. */
.header-contact{flex-shrink:0}
.book-grid,.proof-grid{align-items:start}
#ideal,#the-project,#contact{scroll-margin-top:100px}
.footer-grid{grid-template-columns:1fr auto}
.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;align-items:start}
.contact-grid h2{font-family:var(--serif);font-weight:500;font-size:48px;line-height:1.1;margin:10px 0 22px;letter-spacing:-.04em}
.contact-grid p{color:var(--muted);max-width:430px}
#contact-form fieldset{padding:0;margin:0;border:0;min-width:0}
#contact-form label{display:block;font-size:15px;font-weight:650}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
#contact-form input,#contact-form textarea{display:block;width:100%;margin:7px 0 22px;padding:11px 13px;border:1px solid #aeb7bb;border-radius:6px;background:#fff;color:var(--ink);font:inherit;font-weight:400;font-size:16px;line-height:1.5}
#contact-form textarea{resize:vertical;min-height:140px}
#contact-form input:focus,#contact-form textarea:focus{outline:2px solid var(--blue);outline-offset:2px}
#contact-form button{font-family:inherit;cursor:pointer}
#contact-form fieldset:disabled{opacity:.55}
#contact-form fieldset:disabled button{cursor:default;transform:none}
#contact-status{font-size:15px;min-height:24px;margin:16px 0 0;max-width:none}
#contact-status[data-type="error"]{color:#a52320}
#contact-status[data-type="success"]{color:#24651e}
:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:600px){.header-inner{gap:12px}.brand{font-size:12px;gap:8px}.brand-mark{width:32px;height:32px;flex-shrink:0}.header-contact{padding:10px 14px;font-size:13px}.contact-fields{grid-template-columns:1fr;gap:0}.contact-grid h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.device-art{transition:none}.button:hover,.device-art:hover{transform:none}}

/* Keep both supplied device graphics inside narrow viewports. */
@media(max-width:600px){.project-device{left:0}.ideal-device{right:0}}
/* Allow the taller hero graphic to clear the buttons on narrow phones. */
@media(max-width:360px){.hero-system{height:420px}}
