.home-page{--bg:#f5f0e8;--surface:#faf8f4;--tan-soft:#ebe4da;--peach:#e8d5c0;--ink:#2c2825;--ink-soft:#4a4540;--accent:#b8916a;--muted:#8a8478;--rule:#2c28251f;--ff-serif:var(--font-fraunces), "Iowan Old Style", Georgia, serif;--ff-sans:var(--font-jakarta), "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--maxw:1240px;--gutter:clamp(20px, 4vw, 56px);--photo-filter:saturate(1) contrast(1.02) brightness(1);--anim-opacity:.35;--thesis-anim-opacity:.298;--card-anim-opacity:.193;--featured-anim-opacity:.368;--email-anim-opacity:.123;background:var(--bg);color:var(--ink);font-family:var(--ff-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-size:17px;line-height:1.65}.home-page h1,.home-page h2,.home-page h3,.home-page h4{font-family:var(--ff-serif);letter-spacing:-.02em;text-wrap:balance;font-variation-settings:"opsz" 96, "SOFT" 60, "wght" 380;margin:0;font-weight:400}.home-page h1{font-variation-settings:"opsz" 144, "SOFT" 70, "wght" 360}.home-page p{text-wrap:pretty;margin:0}.home-page a{color:inherit;text-decoration:none}.home-page button{font-family:inherit}.home-page .container{max-width:var(--maxw);padding:0 var(--gutter);margin:0 auto}.home-page .section-pad{padding:clamp(80px,11vw,160px) 0}.home-page .lowercase-label{font-family:var(--ff-sans);text-transform:lowercase;letter-spacing:.08em;color:var(--muted);font-size:12.5px;font-weight:500}.home-page .section-eyebrow{align-items:baseline;gap:18px;margin-bottom:48px;display:flex}.home-page .section-eyebrow .label{font-family:var(--ff-sans);text-transform:lowercase;letter-spacing:.08em;color:var(--muted);font-size:12.5px;font-weight:500}.home-page .section-num{font-family:var(--ff-serif);color:var(--muted);font-variation-settings:"opsz" 14, "SOFT" 80, "wght" 500;font-size:14px;font-style:italic}.home-page .btn{font-size:14.5px;font-family:var(--ff-sans);letter-spacing:.005em;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:14px 22px;font-weight:500;transition:background .25s,color .25s,border-color .25s;display:inline-flex}.home-page .btn-primary{background:var(--ink);color:var(--bg)}.home-page .btn-primary:hover{background:var(--accent);color:var(--surface)}.home-page .btn-ghost{color:var(--ink);border-color:var(--rule);background:0 0}.home-page .btn-ghost:hover{border-color:var(--ink)}.home-page .btn .arrow{transition:transform .3s;display:inline-block}.home-page .btn:hover .arrow{transform:translate(3px)}.home-page .topbar{z-index:5;padding:22px 0 0;position:relative}.home-page .topbar-inner{justify-content:space-between;align-items:baseline;display:flex}.home-page .brandmark{font-family:var(--ff-serif);letter-spacing:-.01em;font-variation-settings:"opsz" 14, "SOFT" 80, "wght" 500;font-size:19px;font-style:italic}.home-page .brandmark .dot{background:var(--accent);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin:0 6px 2px 0;display:inline-block}.home-page .topnav{gap:28px;display:flex}.home-page .topnav a{color:var(--ink-soft);font-size:13.5px}.home-page .topnav a:hover{color:var(--accent)}@media (max-width:640px){.home-page .topnav{display:none}}.home-page .hero{padding:clamp(60px,9vw,110px) 0 clamp(60px,8vw,90px);position:relative}.home-page .hero-eyebrow{align-items:center;gap:14px;margin-bottom:36px;display:flex}.home-page .hero-eyebrow .rule{background:var(--ink);opacity:.35;width:56px;height:1px}.home-page .hero-grid{grid-template-columns:1.1fr .9fr;align-items:end;gap:clamp(28px,5vw,64px);display:grid}@media (max-width:860px){.home-page .hero-grid{grid-template-columns:1fr}}.home-page .hero h1{letter-spacing:-.035em;font-variation-settings:"opsz" 144, "SOFT" 70, "wght" 340;padding-bottom:.1em;font-size:clamp(54px,9vw,124px);line-height:1.05}.home-page .hero h1 .em{color:var(--accent);font-variation-settings:"opsz" 144, "SOFT" 90, "wght" 360;font-style:italic}.home-page .hero-lede{max-width:38ch;color:var(--ink-soft);margin-top:36px;font-size:19px;line-height:1.55}.home-page .hero-ctas{flex-wrap:wrap;align-items:center;gap:14px;margin-top:36px;display:flex}.home-page .hero-photo-wrap{aspect-ratio:4/5;background:var(--tan-soft);border-radius:2px;position:relative;overflow:hidden;box-shadow:0 1px #2c28250f,0 30px 60px -30px #2c282540}.home-page .hero-photo{filter:var(--photo-filter);background-position:50%;background-size:cover;position:absolute;inset:0}.home-page .hero-caption{letter-spacing:.06em;text-transform:lowercase;color:#fffdf7eb;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#2c28258c;border-radius:2px;padding:6px 10px;font-size:11px;position:absolute;bottom:14px;left:14px}.home-page .thesis{position:relative;overflow:hidden}.home-page .thesis-anim{opacity:var(--thesis-anim-opacity,.298)}.home-page .thesis h2{letter-spacing:-.04em;font-variation-settings:"opsz" 144, "SOFT" 60, "wght" 320;font-size:clamp(60px,13vw,200px);line-height:.98;position:relative}.home-page .thesis .line2{text-align:right;color:var(--accent);font-variation-settings:"opsz" 144, "SOFT" 90, "wght" 320;margin-top:.05em;font-style:italic;display:block}.home-page .thesis-body{grid-template-columns:1fr 1fr;gap:48px;max-width:1000px;margin-top:clamp(48px,7vw,90px);margin-left:auto;margin-right:auto;display:grid;position:relative}@media (max-width:720px){.home-page .thesis-body{grid-template-columns:1fr}}.home-page .thesis-body p{color:var(--ink-soft);font-size:18px;line-height:1.65}.home-page .thesis-body p strong{color:var(--ink);font-weight:500}.home-page .apps-section h2{letter-spacing:-.025em;max-width:18ch;font-size:clamp(36px,5.2vw,64px);line-height:1.05}.home-page .apps-section .h2-em{color:var(--accent);font-variation-settings:"opsz" 96, "SOFT" 90, "wght" 380;font-style:italic}.home-page .apps-status-row{align-items:baseline;gap:16px;margin:56px 0 24px;display:flex}.home-page .apps-status-row .label{font-family:var(--ff-sans);text-transform:lowercase;letter-spacing:.08em;color:var(--muted);font-size:12.5px;font-weight:500}.home-page .apps-status-row .rule{background:var(--rule);flex:1;height:1px}.home-page .apps-grid{background:var(--rule);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:1px;display:grid}@media (max-width:720px){.home-page .apps-grid{grid-template-columns:1fr}}.home-page .app-card{background:var(--bg);cursor:pointer;flex-direction:column;gap:18px;min-height:240px;padding:40px 36px 36px;transition:background .35s;display:flex;position:relative;overflow:hidden}.home-page .app-card:hover{background:var(--surface)}.home-page .app-card .anim-bg{opacity:var(--card-anim-opacity,.193);transition:opacity .4s}.home-page .app-card:hover .anim-bg{opacity:calc(var(--card-anim-opacity,.193) * 1.4)}.home-page .app-card-inner{z-index:1;flex:1;position:relative}.home-page .app-card-name{font-family:var(--ff-serif);letter-spacing:-.02em;font-variation-settings:"opsz" 48, "SOFT" 60, "wght" 380;margin-bottom:4px;font-size:30px;line-height:1.05}.home-page .app-card-em{font-variation-settings:"opsz" 48, "SOFT" 90, "wght" 380;font-style:italic}.home-page .app-card-tag{color:var(--ink-soft);max-width:38ch;font-size:15.5px;line-height:1.5}.home-page .app-card-cta{z-index:1;color:var(--ink);align-items:center;gap:8px;font-size:13.5px;display:inline-flex;position:relative}.home-page .app-card-cta .arrow{transition:transform .3s}.home-page .app-card:hover .app-card-cta .arrow{transform:translate(4px)}.home-page .app-card.coming .app-card-cta{color:var(--muted)}.home-page .featured{background:var(--surface);position:relative;overflow:hidden}.home-page .featured-anim{opacity:var(--featured-anim-opacity,.368)}.home-page .featured-grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,5vw,80px);display:grid;position:relative}@media (max-width:860px){.home-page .featured-grid{grid-template-columns:1fr}}.home-page .featured-eyebrow{margin-bottom:28px}.home-page .featured h2{letter-spacing:-.03em;font-variation-settings:"opsz" 96, "SOFT" 60, "wght" 360;max-width:14ch;font-size:clamp(40px,6vw,76px);line-height:1}.home-page .featured h2 .em{color:var(--accent);font-variation-settings:"opsz" 96, "SOFT" 90, "wght" 380;font-style:italic}.home-page .featured-body{color:var(--ink-soft);max-width:50ch;margin-top:32px;font-size:18px;line-height:1.65}.home-page .featured-body p+p{margin-top:1em}.home-page .featured-body em{font-style:italic}.home-page .featured-cta{margin-top:32px}.home-page .phone-photo{aspect-ratio:3/4;border-radius:2px;position:relative;overflow:hidden;box-shadow:0 1px #2c28250f,0 30px 60px -30px #2c282540}.home-page .phone-photo img{object-fit:cover;width:100%;height:100%;filter:var(--photo-filter);display:block}.home-page .promise h2{letter-spacing:-.025em;max-width:22ch;font-size:clamp(38px,5.5vw,70px);line-height:1.04}.home-page .promise h2 .em{color:var(--accent);font-variation-settings:"opsz" 96, "SOFT" 90, "wght" 380;font-style:italic}.home-page .promise-grid{background:var(--rule);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:1px;margin-top:64px;display:grid}@media (max-width:720px){.home-page .promise-grid{grid-template-columns:1fr}}.home-page .promise-item{background:var(--bg);align-items:flex-start;gap:16px;padding:32px 28px 28px;display:flex}.home-page .promise-leaf{width:22px;height:22px;color:var(--accent);flex-shrink:0;margin-top:2px}.home-page .promise-item p{color:var(--ink);font-size:16px;line-height:1.55}.home-page .about-section{position:relative}.home-page .about-grid{grid-template-columns:.9fr 1.3fr;align-items:start;gap:clamp(32px,5vw,72px);display:grid}@media (max-width:860px){.home-page .about-grid{grid-template-columns:1fr}}.home-page .about-photo{aspect-ratio:4/5;background:var(--tan-soft);border-radius:2px;position:relative;overflow:hidden;box-shadow:0 30px 60px -30px #2c282540}.home-page .about-photo img{object-fit:cover;width:100%;height:100%;filter:var(--photo-filter);display:block}.home-page .about-marginalia{font-family:var(--ff-serif);color:var(--muted);font-variation-settings:"opsz" 14, "SOFT" 90, "wght" 400;max-width:26ch;margin-top:18px;font-size:14.5px;font-style:italic;line-height:1.5}.home-page .about-marginalia:before{content:"↳";color:var(--accent);margin-right:8px;font-style:normal}.home-page .about-section h2{letter-spacing:-.025em;font-size:clamp(36px,5vw,60px);line-height:1.05}.home-page .about-body{color:var(--ink-soft);margin-top:28px;font-size:18px;line-height:1.7}.home-page .about-body p+p{margin-top:1em}.home-page .signature{font-family:var(--ff-serif);color:var(--ink);font-variation-settings:"opsz" 36, "SOFT" 100, "wght" 380;letter-spacing:.01em;margin-top:36px;font-size:26px;font-style:italic}.home-page .email{background:var(--ink);color:var(--bg);position:relative;overflow:hidden}.home-page .email-anim{opacity:var(--email-anim-opacity,.123);mix-blend-mode:screen}.home-page .email-inner{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,5vw,80px);display:grid;position:relative}@media (max-width:860px){.home-page .email-inner{grid-template-columns:1fr}}.home-page .email h2{letter-spacing:-.025em;max-width:16ch;font-size:clamp(38px,5.5vw,72px);line-height:1.02}.home-page .email h2 .em{color:var(--peach);font-variation-settings:"opsz" 96, "SOFT" 90, "wght" 380;font-style:italic}.home-page .email-body{color:#f5f0e8c7;max-width:44ch;margin-top:24px;font-size:17px;line-height:1.6}.home-page .email-form{border-bottom:1px solid #f5f0e859;align-items:stretch;gap:0;margin-top:32px;padding-bottom:8px;transition:border-color .25s;display:flex}.home-page .email-form:focus-within{border-color:#f5f0e8d9}.home-page .email-form input{color:var(--bg);font-family:var(--ff-sans);background:0 0;border:none;outline:none;flex:1;padding:14px 0;font-size:19px}.home-page .email-form input::placeholder{color:#f5f0e873}.home-page .email-form button{color:var(--bg);font-family:var(--ff-serif);cursor:pointer;font-variation-settings:"opsz" 24, "SOFT" 80, "wght" 460;background:0 0;border:none;align-items:center;gap:8px;padding:0 4px 0 18px;font-size:18px;font-style:italic;transition:color .25s;display:inline-flex}.home-page .email-form button:hover{color:var(--peach)}.home-page .email-fineprint{color:#f5f0e88c;margin-top:14px;font-size:13px}.home-page .footer{border-top:1px solid var(--rule);padding:80px 0 40px}.home-page .footer-h2{letter-spacing:-.025em;max-width:14ch;margin-bottom:64px;font-size:clamp(38px,5.5vw,72px);line-height:1.02}.home-page .footer-h2 .em{color:var(--accent);font-variation-settings:"opsz" 96, "SOFT" 90, "wght" 380;font-style:italic}.home-page .footer-grid{border-bottom:1px solid var(--rule);grid-template-columns:1.4fr 1fr 1fr 1fr;align-items:start;gap:32px;padding-bottom:56px;display:grid}@media (max-width:720px){.home-page .footer-grid{grid-template-columns:1fr 1fr}}.home-page .footer-col h4{font-family:var(--ff-sans);text-transform:lowercase;letter-spacing:.08em;color:var(--muted);margin-bottom:14px;font-size:12.5px;font-weight:500}.home-page .footer-col a{color:var(--ink);padding:4px 0;font-size:15px;display:block}.home-page .footer-col a:hover{color:var(--accent)}.home-page .stamp{border:1px solid var(--rule);letter-spacing:.08em;text-transform:lowercase;color:var(--muted);background:var(--surface);border-radius:999px;align-items:center;gap:10px;padding:10px 16px;font-size:12px;display:inline-flex}.home-page .stamp .dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.home-page .colophon{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;padding-top:32px;font-size:13px;display:flex}.home-page .colophon .est{font-family:var(--ff-serif);font-variation-settings:"opsz" 14, "SOFT" 80, "wght" 480;font-size:14px;font-style:italic}
