@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Instrument+Serif:ital@0;1&family=Manrope:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Source+Sans+Pro:300italic,600italic,300,600');

:root { --ink:#171713; --paper:#e8e1d4; --warm:#9f8264; --rust:#6d4430; --line:rgba(232,225,212,.35); --mono:'DM Mono',monospace; --sans:Manrope,Arial,sans-serif; --serif:'Instrument Serif',Georgia,serif; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--ink); color:var(--paper); font-family:var(--sans); } a { color:inherit; text-decoration:none; } .eyebrow { font:500 10px/1.4 var(--mono); letter-spacing:.16em; text-transform:uppercase; color:#c8b6a0; } h1,h2,h3,p { margin-top:0; } h1,h2 { font-weight:400; } button,.primary-cta,.header-cta,.quiet-button { cursor:pointer; font:500 11px var(--mono); letter-spacing:.1em; text-transform:uppercase; }

/* Index */
.index-page { min-height:100vh; display:grid; place-items:center; background:linear-gradient(130deg,rgba(30,25,20,.9),rgba(12,12,10,.95)),url('https://jacobbarton.life/images/mmmg-hands.jpg') center/cover; }
.concept-index { max-width:760px; padding:50px 32px; }.concept-index h1 { font:clamp(50px,8vw,95px)/.88 var(--serif); max-width:650px; margin:24px 0; }.intro { max-width:560px; color:#d1c6b7; line-height:1.65; }.concept-links { margin-top:50px; border-top:1px solid var(--line); }.concept-links a { padding:20px 0; border-bottom:1px solid var(--line); display:grid; grid-template-columns:55px 1fr; font-size:20px; }.concept-links span { color:#af8b6d; font:12px var(--mono); padding-top:5px; }.concept-links small { grid-column:2; margin-top:5px; color:#b9ac9b; font-size:12px; }

/* Native continuation */
.native-header { position:absolute; z-index:2; left:0; right:0; display:flex; justify-content:space-between; padding:24px 4vw; font:10px var(--mono); letter-spacing:.12em; }.native-header span { opacity:.7; }.native-hero { min-height:100vh; display:grid; place-items:center; position:relative; overflow:hidden; }.hero-photo { position:absolute; inset:0; background:linear-gradient(90deg,rgba(13,12,10,.82),rgba(13,12,10,.35)),url('https://jacobbarton.life/images/jacgesbench.jpg') center/cover; filter:saturate(.65); }.native-title { position:relative; max-width:680px; width:90%; text-align:center; }.native-title h1 { font:clamp(70px,11vw,150px)/.72 var(--serif); margin:25px 0 32px; }.native-title>p:not(.eyebrow) { max-width:370px; margin:0 auto 32px; line-height:1.7; color:#d7cebf; }.quiet-button { display:inline-block; border:1px solid var(--paper); padding:15px 20px; transition:.2s; }.quiet-button:hover { background:var(--paper); color:var(--ink); }.native-statement,.about-jacob { padding:140px max(8vw,28px); max-width:1050px; }.native-statement h2,.about-jacob h2 { font:clamp(42px,6vw,76px)/.95 var(--serif); max-width:760px; margin:20px 0; }.native-statement>p:last-child,.about-jacob>p:last-child { max-width:580px; line-height:1.8; color:#c5b8a8; }.native-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.native-grid article { padding:55px max(3vw,24px); min-height:300px; border-right:1px solid var(--line); }.native-grid article:last-child { border:0; }.native-grid h3 { font:32px/1 var(--serif); }.native-grid p:last-child { color:#bfb2a1; font-size:14px; line-height:1.75; }.native-sample { padding:100px 8vw; background:#30281f; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:12vw; }.native-sample h2 { font:clamp(40px,5vw,68px)/.9 var(--serif); }.native-sample p:last-child { color:#d5c5b2; line-height:1.75; }.score-card { background:#dfd7c6; color:#29241e; aspect-ratio: .78; padding:30px; position:relative; box-shadow:18px 18px 0 rgba(0,0,0,.16); font-family:var(--mono); }.score-card span { font-size:9px; letter-spacing:.13em; }.score-card i { position:relative; display:block; border-top:1px solid #594d41; height:11%; top:14%; }.score-card b { position:absolute; left:28%; top:39%; font:32px var(--serif); letter-spacing:.2em; transform:rotate(-4deg); }.about-jacob { margin-left:auto; }.request-panel { padding:120px 10vw; text-align:center; background:#b49b7f; color:#191611; }.request-panel h2 { font:clamp(60px,9vw,120px)/.75 var(--serif); margin:25px 0; }.request-panel>p:not(.eyebrow) { max-width:540px; margin:0 auto 30px; line-height:1.7; }.request-panel button,.final-cta button { background:var(--ink); color:var(--paper); border:1px solid var(--ink); padding:17px 24px; }.request-panel small,.final-cta small { display:block; margin:20px auto 0; max-width:570px; line-height:1.5; opacity:.68; font:10px var(--mono); } footer { padding:28px 4vw; text-align:center; font:10px var(--mono); letter-spacing:.1em; color:#a99c8b; } footer a { text-decoration:underline; }

/* Conversion lander */
.lander-header { min-height:70px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(232,225,212,.18); background:#171713; position:sticky; top:0; z-index:5; }.brand { font:500 11px var(--mono); letter-spacing:.1em; }.brand span { color:#ad9174; margin-left:12px; }.header-cta { border:1px solid #bba081; padding:11px 14px; font-size:9px; }.lander-hero { max-width:1360px; margin:auto; min-height:640px; display:grid; grid-template-columns:1.25fr .75fr; }.hero-copy { padding:115px 7vw 90px; align-self:center; }.hero-copy h1 { font:clamp(53px,6vw,95px)/.89 var(--serif); margin:18px 0 25px; max-width:780px; }.hero-copy h1 em { color:#be9b79; font-style:italic; }.lede { color:#d5cabc; line-height:1.7; max-width:560px; font-size:17px; }.primary-cta { display:inline-flex; justify-content:space-between; min-width:280px; padding:18px 20px; background:#d9c09e; color:#1e1b16; margin:26px 0 14px; }.primary-cta span { font-size:18px; line-height:.6; }.micro { font-size:11px; color:#a99c8b; max-width:410px; line-height:1.6; }.lander-image { background:linear-gradient(0deg,rgba(20,16,12,.3),rgba(20,16,12,.3)),url('https://jacobbarton.life/images/kbface.jpg') center/cover; min-height:360px; display:flex; align-items:end; padding:42px; }.lander-image p { font:11px/1.5 var(--mono); letter-spacing:.15em; }.truth-strip { background:#9b7c60; color:#1e1813; padding:20px 5vw; display:flex; justify-content:space-around; gap:15px; font:10px var(--mono); letter-spacing:.1em; text-align:center; }.pain-section,.process,.faq { padding:120px 8vw; max-width:1200px; margin:auto; }.pain-section h2,.process h2 { font:clamp(46px,5vw,75px)/.95 var(--serif); margin:20px 0 55px; }.pain-list { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }.pain-list p { line-height:1.7; color:#cbbdac; padding-right:20px; }.pain-list b { display:block; color:var(--paper); font:29px var(--serif); margin-bottom:12px; }.closing { margin-top:48px; color:#b79776; font:italic 28px var(--serif); }.mechanism { background:#30271f; display:grid; grid-template-columns:1fr 1fr; }.mechanism-image { background:url('https://jacobbarton.life/images/mmmg-hands.jpg') center/cover; min-height:530px; filter:saturate(.7); }.mechanism>div:last-child { padding:100px 10%; }.mechanism h2,.deliverables h2,.jacob-cred h2,.final-cta h2 { font:clamp(45px,5vw,74px)/.9 var(--serif); margin:20px 0; }.mechanism p:not(.eyebrow),.jacob-cred p:not(.eyebrow),.final-cta p:not(.eyebrow) { color:#d1c4b4; line-height:1.75; }.mechanism ul { list-style:'—  '; color:#dfc4a3; padding-left:18px; line-height:2; font-size:14px; }.process { max-width:1360px; }.process ol { padding:0; margin:50px 0 0; list-style:none; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); }.process li { padding:30px 22px 0 0; }.process li+li { border-left:1px solid var(--line); padding-left:22px; }.process li span { font:11px var(--mono); color:#b49170; }.process h3 { font:29px/1 var(--serif); margin:20px 0 10px; }.process li p { color:#b8aa99; font-size:13px; line-height:1.65; }.deliverables { background:#ded3c1; color:#1d1a15; padding:100px 8vw; display:grid; grid-template-columns:1fr 1fr; gap:60px; }.deliverables .eyebrow { color:#70513a; }.deliverable-list { border-top:1px solid #a89680; }.deliverable-list p { border-bottom:1px solid #a89680; padding:17px 0; margin:0; font-size:14px; }.deliverable-list span { color:#73533c; margin-right:13px; }.jacob-cred { display:grid; grid-template-columns:.7fr 1.3fr; background:#1f1e19; }.face-image { min-height:480px; background:linear-gradient(0deg,rgba(31,30,25,.2),rgba(31,30,25,.2)),url('https://jacobbarton.life/images/face.jpg') center/cover; filter:grayscale(.55); }.jacob-cred>div:last-child { padding:105px 12%; }.signature { margin-top:38px; color:#b99775!important; font:11px var(--mono); letter-spacing:.15em; }.faq { max-width:920px; }.faq>p { text-align:center; }.faq details { border-top:1px solid var(--line); padding:20px 0; }.faq details:last-child { border-bottom:1px solid var(--line); }.faq summary { cursor:pointer; font:28px var(--serif); }.faq details p { color:#bcae9d; line-height:1.7; max-width:640px; margin:15px 0 0; }.final-cta { background:#6d4430; padding:120px 8vw; text-align:center; }.final-cta>p:not(.eyebrow) { max-width:560px; margin:0 auto 28px; }.final-cta button { background:#e7d5bd; color:#251b15; border-color:#e7d5bd; }

@media (max-width:700px) { .native-header { padding:18px 20px; font-size:8px; }.native-header span { display:none; }.native-title h1 { font-size:74px; }.native-grid,.native-sample,.lander-hero,.mechanism,.deliverables,.jacob-cred { grid-template-columns:1fr; }.native-grid article { min-height:0; border-right:0; border-bottom:1px solid var(--line); }.native-sample { gap:40px; }.score-card { max-width:270px; width:75%; }.native-statement,.about-jacob,.pain-section,.process,.faq { padding:80px 28px; }.lander-header { padding:0 18px; }.brand span { display:none; }.header-cta { font-size:8px; padding:10px; }.hero-copy { padding:80px 28px 55px; }.lander-image { min-height:250px; }.truth-strip { flex-direction:column; }.pain-list { grid-template-columns:1fr; gap:2px; }.pain-section h2,.process h2 { margin-bottom:35px; }.process ol { grid-template-columns:1fr; }.process li,.process li+li { border-left:0; border-bottom:1px solid var(--line); padding:24px 0; }.mechanism>div:last-child,.jacob-cred>div:last-child { padding:75px 28px; }.mechanism-image,.face-image { min-height:330px; }.deliverables { padding:75px 28px; gap:25px; }.concept-links a { font-size:17px; } }

/* Native-site continuation: closely follows the type and centered hero grammar
   of jacobbarton.life while keeping the Student Editions content distinct. */
.native-page { --native-white:#fff; --native-fade:rgba(255,255,255,.78); background:#1b1f22; font-family:'Source Sans Pro',sans-serif; font-weight:300; color:var(--native-white); }
.native-page .eyebrow,.native-page h1,.native-page h2,.native-page h3,.native-page p,.native-page button,.native-page a { font-family:'Source Sans Pro',sans-serif; }
.native-page .eyebrow { color:var(--native-fade); font-size:11px; font-weight:300; letter-spacing:.19rem; }
.native-page .native-header { display:none; }
.native-page .native-hero { min-height:100svh; padding:3rem 2rem; }
.native-page .hero-photo { background-image:linear-gradient(to top,rgba(19,21,25,.68),rgba(19,21,25,.68)),url('https://jacobbarton.life/images/overlay.png'),url('https://jacobbarton.life/images/bg.jpg'); background-position:center,center,center; background-size:auto,256px 256px,cover; background-repeat:no-repeat,repeat,no-repeat; filter:none; }
.native-page .native-title { display:flex; flex-direction:column; align-items:center; width:min(100%,44rem); padding:0; text-align:center; }
.native-page .native-portrait { width:5.5rem; height:5.5rem; border:1px solid #fff; border-radius:50%; background:url('https://jacobbarton.life/images/face.jpg') center/cover; }
.native-page .native-title-copy { position:relative; width:100%; margin-top:3.5rem; padding:3rem 2rem; border-top:1px solid #fff; border-bottom:1px solid #fff; }
.native-page .native-title-copy::before { content:''; position:absolute; top:-3.5rem; left:50%; width:1px; height:3.5rem; background:#fff; }
.native-page .native-title h1 { margin:0 0 1.25rem; color:#fff; font-size:2rem; font-weight:600; letter-spacing:.48rem; line-height:1.42; text-transform:uppercase; }
.native-page .native-title h1 br { display:none; }
.native-page .native-title>div>p:not(.eyebrow) { max-width:34rem; margin:0 auto; color:#fff; font-size:.82rem; font-weight:300; letter-spacing:.2rem; line-height:2; text-transform:uppercase; }
.native-page .native-hero-nav { display:flex; margin-top:3.5rem; padding:0; border:1px solid #fff; list-style:none; }
.native-page .native-hero-nav a { min-width:9.2rem; padding:1rem .8rem; border-right:1px solid #fff; color:#fff; font-size:.8rem; font-weight:300; letter-spacing:.12rem; text-transform:uppercase; }
.native-page .native-hero-nav a:last-child { border-right:0; }.native-page .native-hero-nav a:hover { background:#fff; color:#1b1f22; }
.native-page .native-statement,.native-page .about-jacob { max-width:56rem; padding:8rem 2rem; }.native-page .native-statement h2,.native-page .about-jacob h2,.native-page .native-sample h2 { font-size:1.45rem; font-weight:600; letter-spacing:.16rem; line-height:1.55; text-transform:uppercase; }.native-page .native-statement>p:last-child,.native-page .about-jacob>p:last-child,.native-page .native-sample p:last-child { color:var(--native-fade); font-size:1rem; font-weight:300; line-height:1.7; }.native-page .native-grid h3 { color:#fff; font-size:1.15rem; font-weight:600; letter-spacing:.13rem; line-height:1.5; text-transform:uppercase; }.native-page .native-grid p:last-child { color:var(--native-fade); font-size:1rem; }.native-page .native-sample { background:#252a2e; }.native-page .score-card { box-shadow:none; }.native-page .request-panel { background:#252a2e; color:#fff; }.native-page .request-panel h2 { font-size:2rem; font-weight:600; letter-spacing:.22rem; line-height:1.4; text-transform:uppercase; }.native-page .request-panel>p:not(.eyebrow) { color:var(--native-fade); }.native-page .request-panel button { background:transparent; border:1px solid #fff; color:#fff; font-weight:300; }.native-page .request-panel button:hover { background:#fff; color:#1b1f22; }.native-page footer { font-family:'Source Sans Pro',sans-serif; }
@media (max-width:700px) { .native-page .native-hero { padding:2rem 1rem; }.native-page .native-title-copy { margin-top:2.5rem; padding:2rem 1rem; }.native-page .native-title-copy::before { top:-2.5rem; height:2.5rem; }.native-page .native-title h1 { font-size:1.55rem; letter-spacing:.25rem; }.native-page .native-title>div>p:not(.eyebrow) { font-size:.7rem; letter-spacing:.12rem; }.native-page .native-hero-nav { width:100%; margin-top:2.5rem; }.native-page .native-hero-nav a { min-width:0; flex:1; padding:1rem .25rem; font-size:.6rem; letter-spacing:.08rem; }.native-page .native-statement,.native-page .about-jacob { padding:5rem 1.5rem; }.native-page .native-statement h2,.native-page .about-jacob h2,.native-page .native-sample h2 { font-size:1.25rem; letter-spacing:.1rem; }.native-page .request-panel h2 { font-size:1.45rem; letter-spacing:.14rem; } }

/* Article-modal behavior, matching the current site’s overlay interaction. */
.native-page .native-hero-nav button { min-width:9.2rem; padding:1rem .8rem; border:0; border-right:1px solid #fff; background:transparent; color:#fff; font-family:'Source Sans Pro',sans-serif; font-size:.8rem; font-weight:300; letter-spacing:.12rem; text-transform:uppercase; }.native-page .native-hero-nav button:last-child { border-right:0; }.native-page .native-hero-nav button:hover,.native-page .native-hero-nav button:focus-visible { background:#fff; color:#1b1f22; outline:0; }
.native-page .modal-layer { position:fixed; z-index:10; inset:0; display:grid; place-items:center; padding:3rem 1rem; overflow-y:auto; background:rgba(19,21,25,.05); opacity:0; pointer-events:none; transition:opacity .325s ease-in-out; }.native-page .modal-layer.is-open { opacity:1; pointer-events:auto; }.native-page.modal-open .native-hero,.native-page.modal-open footer { transform:scale(.97); filter:blur(.15rem); opacity:.35; transition:transform .325s ease-in-out,filter .325s ease-in-out,opacity .325s ease-in-out; }.native-page .native-modal { position:relative; width:min(40rem,100%); max-height:calc(100svh - 6rem); padding:4.5rem 2.5rem 2rem; overflow-y:auto; border-radius:4px; background:rgba(27,31,34,.94); box-shadow:0 1.4rem 4rem rgba(0,0,0,.38); color:#fff; transform:translateY(.25rem); opacity:0; transition:transform .325s ease-in-out,opacity .325s ease-in-out; }.native-page .modal-layer.is-open .native-modal:not([hidden]) { transform:translateY(0); opacity:1; }.native-page .native-modal[hidden] { display:none; }.native-page .native-modal h2 { margin:1rem 3rem 2rem 0; color:#fff; font-family:'Source Sans Pro',sans-serif; font-size:1.3rem; font-weight:600; letter-spacing:.18rem; line-height:1.5; text-transform:uppercase; }.native-page .native-modal h3 { color:#fff; font-family:'Source Sans Pro',sans-serif; font-size:1rem; font-weight:600; letter-spacing:.08rem; line-height:1.5; text-transform:uppercase; }.native-page .native-modal > p:not(.eyebrow),.native-page .native-modal .modal-steps p,.native-page .native-modal small { color:rgba(255,255,255,.88); font-size:1rem; line-height:1.65; }.native-page .modal-close { position:absolute; top:.75rem; right:.75rem; width:2.5rem; height:2.5rem; overflow:hidden; border:0; background:transparent; color:transparent; cursor:pointer; }.native-page .modal-close::before,.native-page .modal-close::after { content:''; position:absolute; top:1.2rem; left:.35rem; width:1.8rem; height:1px; background:#fff; }.native-page .modal-close::before { transform:rotate(45deg); }.native-page .modal-close::after { transform:rotate(-45deg); }.native-page .modal-close:hover,.native-page .modal-close:focus-visible { background:rgba(255,255,255,.1); outline:0; }.native-page .modal-image { display:block; width:100%; margin:0 0 2rem; border-radius:2px; }.native-page .modal-steps { display:grid; grid-template-columns:repeat(3,1fr); margin:2.5rem 0; border-top:1px solid rgba(255,255,255,.45); border-bottom:1px solid rgba(255,255,255,.45); }.native-page .modal-steps div { min-height:13rem; padding:1.5rem 1rem 1.5rem 0; }.native-page .modal-steps div+div { padding-left:1rem; border-left:1px solid rgba(255,255,255,.45); }.native-page .modal-steps span { color:rgba(255,255,255,.78); font:300 .75rem 'Source Sans Pro',sans-serif; letter-spacing:.15rem; }.native-page .modal-steps p { font-size:.9rem!important; }.native-page .modal-score { display:grid; grid-template-columns:1fr .75fr; align-items:center; gap:2rem; padding:2rem 0; }.native-page .modal-score .score-card { width:100%; min-height:15rem; }.native-page .modal-action { display:inline-block; margin-top:1rem; padding:1rem 1.25rem; border:1px solid #fff; background:transparent; color:#fff; font-family:'Source Sans Pro',sans-serif; font-size:.75rem; font-weight:300; letter-spacing:.12rem; text-transform:uppercase; }.native-page .modal-action:hover,.native-page .modal-action:focus-visible { background:#fff; color:#1b1f22; outline:0; }.native-page .request-preview { margin:2rem 0; padding:1.5rem; border:1px solid rgba(255,255,255,.5); }.native-page .request-preview p { margin:0 0 .35rem; color:#fff; font:600 .72rem 'Source Sans Pro',sans-serif; letter-spacing:.13rem; }.native-page .request-preview span { display:block; margin-bottom:1.5rem; color:rgba(255,255,255,.75); font-size:.95rem; }.native-page .request-preview span:last-child { margin-bottom:0; }
@media (max-width:700px) { .native-page .native-hero-nav button { min-width:0; flex:1; padding:1rem .25rem; font-size:.6rem; letter-spacing:.08rem; }.native-page .modal-layer { padding:1rem; }.native-page .native-modal { max-height:calc(100svh - 2rem); padding:3.5rem 1.5rem 1.5rem; }.native-page .native-modal h2 { font-size:1.1rem; letter-spacing:.12rem; }.native-page .modal-steps,.native-page .modal-score { grid-template-columns:1fr; }.native-page .modal-steps div,.native-page .modal-steps div+div { min-height:0; padding:1.2rem 0; border-left:0; border-top:1px solid rgba(255,255,255,.25); }.native-page .modal-steps div:first-child { border-top:0; }.native-page .modal-score { gap:1rem; }.native-page .modal-score .score-card { max-width:220px; min-height:0; } }

.native-page .native-hero-nav { width:100%; }.native-page .native-hero-nav button { min-width:0; flex:1; padding-inline:.5rem; }.native-page .native-reference-modal { max-width:40rem; }.native-page .service-list { margin:2rem 0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.4); }.native-page .service-list li { padding:1rem 0; border-bottom:1px solid rgba(255,255,255,.4); color:rgba(255,255,255,.88); line-height:1.55; }.native-page .service-list b { color:#fff; font-weight:600; }
