.nav-links a.cur{color:var(--terra)}
header.scrolled .nav-links a.cur{color:var(--terra)}
.btn-solid{background:var(--terra);color:var(--cream)}
.btn-solid:hover{background:#A64D2D;transform:translateY(-3px);box-shadow:0 12px 30px rgba(193,95,60,.34)}
.btn-ghost{border-color:rgba(244,238,228,.4);color:var(--cream)}
.btn-ghost:hover{border-color:var(--cream);background:rgba(244,238,228,.1)}
.page-hero{background:var(--ink);color:var(--cream);padding:clamp(150px,20vh,190px) 0 70px}
.page-hero .eyebrow{color:var(--beige)}
.page-hero .eyebrow::before{color:var(--beige)}
.page-hero h1{font-family:var(--display);font-weight:600;font-size:clamp(2.4rem,5vw,4rem);line-height:1.04;letter-spacing:-.025em;color:var(--cream);margin-top:16px;max-width:16ch}
.page-hero h1 em{font-style:italic;color:var(--beige);font-weight:500}
.page-hero p.lede{margin-top:20px;max-width:58ch;font-size:1.08rem;color:rgba(244,238,228,.85);font-weight:300}
.page-hero .hero-actions{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap}
.pad{padding:clamp(72px,9vw,120px) 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;margin-bottom:50px}
.sec-head h2{font-family:var(--display);font-weight:600;font-size:clamp(2rem,4.4vw,3.2rem);line-height:1.04;letter-spacing:-.025em;margin-top:14px;color:var(--ink);max-width:18ch}
.sec-head h2 em{font-style:italic;color:var(--terra);font-weight:500}
.reveal{opacity:1;transform:none}
.reveal.in{opacity:1;transform:none}
.services{background:var(--cream-2);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}
.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.services p.intro{font-size:1.04rem;color:var(--body-ink);line-height:1.75;max-width:46ch}
.service-tiles{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.service-tile{background:var(--paper);border:1px solid var(--line-2);border-radius:14px;padding:16px 18px;display:flex;align-items:center;gap:13px;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
.service-tile:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(43,37,33,.14);border-color:var(--terra)}
.service-tile .ic{width:38px;height:38px;border-radius:10px;background:var(--cream-2);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.service-tile .ic svg{width:18px;height:18px;color:var(--terra)}
.service-tile span{font-size:.86rem;font-weight:600;color:var(--ink);letter-spacing:-.005em;line-height:1.25}
.web-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.site{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s}
.site:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(24,22,33,.13)}
.chrome{display:flex;align-items:center;gap:8px;padding:13px 16px;background:var(--paper);border-bottom:1px solid var(--line)}
.chrome .dot{width:11px;height:11px;border-radius:50%;background:var(--line)}
.chrome .url{margin-left:10px;flex:1;font-family:var(--mono);font-size:.74rem;color:var(--muted);background:var(--paper-2);padding:6px 12px;border-radius:100px}
.shot{aspect-ratio:16/10;overflow:hidden;position:relative;background:var(--paper-2)}
.shot img{width:100%;height:100%;object-fit:cover;object-position:top}
.site-info{padding:24px 26px 28px}
.site-info .st{display:flex;justify-content:space-between;align-items:center;gap:10px}
.site-info h3{font-family:var(--display);font-weight:600;font-size:1.4rem;letter-spacing:-.01em}
.site-info .live{font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--ink);padding:5px 10px;border-radius:100px;display:inline-flex;align-items:center;gap:6px}
.site-info .live::before{content:"";width:6px;height:6px;border-radius:50%;background:#46d27e}
.site-info .preview::before{background:#E0A24A}
.site-info p{font-size:.92rem;color:var(--ink-soft);margin-top:10px}
.site-info .tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.site-info .tags span{font-family:var(--mono);font-size:.68rem;color:var(--ink-soft);border:1px solid var(--line);padding:4px 10px;border-radius:100px}
.site-info .visit{margin-top:18px;display:inline-flex;align-items:center;gap:.5em;font-weight:600;font-size:.9rem;color:var(--accent)}
.site-info .visit:hover{gap:.9em}
.testi-spot{max-width:720px;margin:0 auto;text-align:center}
.testi-spot .mark{font-family:var(--display);font-size:3.2rem;line-height:.4;color:var(--beige);height:.6em;display:block}
.testi-spot p{font-family:var(--display);font-weight:500;font-size:clamp(1.3rem,2.4vw,1.7rem);line-height:1.45;color:var(--ink);margin-top:20px}
.testi-spot .by{margin-top:26px;display:flex;align-items:center;justify-content:center;gap:13px}
.testi-spot .av{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--terra),#8E4326);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:600;font-size:.94rem;color:var(--cream)}
.testi-spot .nm{font-family:var(--display);font-weight:600;font-size:1rem;color:var(--ink);text-align:left}
.testi-spot .rl{font-size:.8rem;color:var(--label);margin-top:2px;text-align:left}
.clients{padding:clamp(54px,7vw,84px) 0;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}
.clients .lab{text-align:center;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--label);margin-bottom:34px}
.cmarq{overflow:hidden}
.cmarq-track{display:flex;width:max-content;align-items:center;gap:60px}
.clogo{flex-shrink:0;height:44px;display:flex;align-items:center}
.clogo img{height:100%;width:auto;max-width:150px;object-fit:contain;opacity:.85;transition:opacity .35s var(--ease),transform .35s var(--ease)}
.clogo:hover img{opacity:1;transform:scale(1.04)}
.founder{background:var(--ink);color:var(--cream)}
.founder-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}
.founder-photo{aspect-ratio:4/5;border-radius:20px;overflow:hidden;position:relative;background:linear-gradient(160deg,#4A4038,#2B2521);box-shadow:0 26px 56px rgba(0,0,0,.3)}
.founder-photo::before{content:"PORTRAIT";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.72rem;letter-spacing:.18em;color:rgba(244,238,228,.4)}
.founder-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.founder .eyebrow{color:var(--beige)}
.founder .eyebrow::before{color:var(--beige)}
.founder h2{font-family:var(--display);font-weight:600;font-size:clamp(1.7rem,3vw,2.3rem);letter-spacing:-.015em;line-height:1.15;color:var(--cream);margin-top:16px;max-width:16ch}
.founder .bio{margin-top:18px;font-size:1.04rem;line-height:1.75;color:rgba(244,238,228,.85);max-width:54ch}
.founder .who{margin-top:26px}
.founder .who .nm{font-family:var(--display);font-weight:600;font-size:1.25rem;color:var(--cream)}
.founder .who .rl{font-size:.88rem;color:rgba(244,238,228,.7);margin-top:3px}
.founder .who a{margin-top:18px;display:inline-flex;font-size:.88rem;font-weight:600;color:var(--cream);align-items:center;gap:.4em;border-bottom:2px solid rgba(216,201,166,.5);padding-bottom:3px;transition:border-color .3s}
.founder .who a:hover{border-color:var(--beige)}
.founder .social{margin-top:22px;display:flex;gap:12px}
.founder .social a{width:40px;height:40px;border-radius:50%;border:1.5px solid rgba(244,238,228,.32);display:flex;align-items:center;justify-content:center;color:var(--cream);transition:background .3s,border-color .3s,transform .3s var(--ease)}
.founder .social a:hover{background:var(--terra);border-color:var(--terra);transform:translateY(-3px)}
.founder .social svg{width:18px;height:18px}
.cta{position:relative;overflow:hidden;background:var(--cream-2);text-align:center}
.cta-sun{position:absolute;bottom:-90px;left:50%;transform:translateX(-50%);width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(193,95,60,.22),transparent 65%)}
.cta .wrap{position:relative;z-index:2}
.cta h2{font-family:var(--display);font-weight:600;font-size:clamp(2.3rem,5.2vw,4rem);line-height:1.02;letter-spacing:-.02em;max-width:16ch;margin:0 auto;color:var(--ink)}
.cta h2 em{font-style:italic;color:var(--terra)}
.cta p{color:var(--body-ink);margin-top:20px;max-width:42ch;margin-inline:auto}
.cta .btn{margin-top:34px}
.foot-brand .brand b{color:var(--terra)}
@keyframes reveal{to{opacity:1;transform:none}}
@keyframes scroll{to{transform:translateX(-50%)}}
@media(max-width:980px){
    .services-grid{grid-template-columns:1fr;gap:30px}
    .web-grid{grid-template-columns:1fr;gap:34px}
    .founder-grid{grid-template-columns:1fr;gap:36px}
  }
@media(max-width:760px){
    .nav-links{position:fixed;inset:0 0 0 auto;width:min(82vw,330px);background:var(--cream);flex-direction:column;align-items:flex-start;justify-content:center;gap:26px;padding:0 40px;transform:translateX(100%);transition:transform .4s var(--ease);box-shadow:-20px 0 50px rgba(43,37,33,.12);z-index:90}
    .nav-links.open{transform:none}.nav-links a{font-size:1.15rem;color:var(--ink)!important}.nav-links a.nav-cta{color:var(--cream)!important}
    .burger{display:flex;z-index:95}
    .burger.open span{background:var(--ink)}
    .burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .burger.open span:nth-child(2){opacity:0}
    .burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    .foot-top{grid-template-columns:1fr 1fr;gap:32px}
  }
@media(max-width:520px){
    .wrap{padding:0 20px}
    .service-tiles{grid-template-columns:1fr}
    .foot-top{grid-template-columns:1fr}
  }
@media(prefers-reduced-motion:reduce){
    *{animation:none!important;transition:none!important}
    .reveal{opacity:1;transform:none}
    .cmarq-track{animation:none;transform:none}
  }
