/* TravelCode /about — page-specific styles. Base + NAV + FOOTER live in tc-shared.css. */

section{padding:104px 0;position:relative}
@media (max-width:720px){ section{padding:72px 0} }

.serif{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:400}
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:600;margin-bottom:18px;display:inline-flex;align-items:center;gap:8px}
.eyebrow::before{content:"";width:18px;height:1px;background:var(--ink-3)}

/* HERO */
.hero{padding:48px 0 80px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:end}
@media (max-width:1000px){ .hero-grid{grid-template-columns:1fr;gap:40px} }
.hero h1{margin-bottom:24px}
.hero p.sub{font-size:18px;line-height:1.55;color:var(--ink-2);max-width:54ch;margin-bottom:32px;text-wrap:pretty}
.hero-cta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.hero-trust{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:11.5px;color:var(--muted);font-family:'JetBrains Mono',monospace;letter-spacing:.04em;padding-top:24px;border-top:1px solid var(--line)}
.hero-trust .item{display:inline-flex;align-items:center;gap:6px}
.hero-trust .item::before{content:"";width:4px;height:4px;border-radius:99px;background:var(--green)}

.doc-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:0 24px 48px -28px rgba(11,13,18,.18),0 4px 16px rgba(11,13,18,.04);position:relative}
.doc-card .doc-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:20px}
.doc-card .doc-id{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--ink-3);font-weight:600}
.doc-card .doc-stamp{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.12em;color:var(--green);font-weight:600;border:1px solid var(--green);padding:3px 8px;border-radius:4px;text-transform:uppercase}
.doc-card .doc-title{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:20px;font-weight:400;color:var(--ink-2);margin-bottom:18px;line-height:1.3}
.doc-stat-row{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}
.doc-stat{padding:18px 0;border-bottom:1px solid var(--line)}
.doc-stat:nth-child(odd){padding-right:16px;border-right:1px solid var(--line)}
.doc-stat:nth-child(even){padding-left:16px}
.doc-stat:nth-last-child(-n+2){border-bottom:none}
.doc-stat .n{font-family:'Inter',sans-serif;font-size:30px;font-weight:600;letter-spacing:-.025em;color:var(--ink);line-height:1}
.doc-stat .l{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.08em;color:var(--ink-3);text-transform:uppercase;margin-top:6px;font-weight:500}

/* STORY */
.story{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.quote{margin:0;padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.quote q{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:clamp(22px,2.4vw,30px);line-height:1.35;color:var(--ink);font-weight:400;quotes:"" "";letter-spacing:-.015em}
.quote .by{display:flex;align-items:center;gap:12px;margin-top:18px}
.quote .by-avatar{width:40px;height:40px;border-radius:99px;background:linear-gradient(135deg,var(--ink-2),var(--ink));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;flex-shrink:0}
.quote .by-name{font-size:14px;color:var(--ink);font-weight:600}
.quote .by-role{font-size:13px;color:var(--ink-3)}

/* WHAT WE BUILT */
.built-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:48px}
@media (max-width:900px){ .built-grid{grid-template-columns:1fr} }
.built{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;transition:all .2s}
.built:hover{border-color:var(--ink);transform:translateY(-2px)}
.built .n{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--ink-3);font-weight:600}
.built h3{font-size:22px;font-weight:600;letter-spacing:-.018em;line-height:1.2}
.built p{font-size:14.5px;line-height:1.6;color:var(--ink-2);flex:1}
.built a{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:600;color:var(--blue);display:inline-flex;align-items:center;gap:6px;margin-top:6px}
.built a:hover{text-decoration:underline}

/* NUMBERS */
.nums{background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.nums-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:48px;border-top:1px solid var(--line-2);border-left:1px solid var(--line-2)}
@media (max-width:900px){ .nums-grid{grid-template-columns:repeat(2,1fr)} }
.num{padding:32px 28px;border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);background:var(--surface)}
.num .v{font-size:clamp(36px,3.4vw,48px);font-weight:600;letter-spacing:-.03em;color:var(--ink);line-height:1;margin-bottom:8px}
.num .v sup{font-size:.5em;font-weight:600;letter-spacing:0;vertical-align:top;margin-left:1px}
.num .l{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.06em;color:var(--ink-3);text-transform:uppercase;font-weight:500;line-height:1.4}
.nums-foot{margin-top:24px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.06em;color:var(--ink-3);text-align:right}

/* PRINCIPLES */
.princ-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:48px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
@media (max-width:800px){ .princ-grid{grid-template-columns:1fr} }
.princ{padding:36px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);position:relative}
.princ .head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.princ .sect{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--ink-3);font-weight:600}
.princ h3{font-size:19px;font-weight:600;letter-spacing:-.015em;line-height:1.25;margin-bottom:10px}
.princ p{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.princ a{color:var(--blue);font-weight:600}

/* FINAL */
.final{padding:120px 0}
.final-card{background:var(--ink);color:#fff;border-radius:24px;padding:64px 56px;display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center}
@media (max-width:900px){ .final-card{grid-template-columns:1fr;padding:48px 32px} }
.final-card h2{font-size:clamp(28px,3.4vw,42px);margin-bottom:14px;color:#fff;font-weight:600;letter-spacing:-.025em;line-height:1.05}
.final-card p{color:rgba(255,255,255,.7);font-size:16px;line-height:1.55;max-width:48ch}
.final-card .cta{display:flex;flex-direction:column;gap:10px}
.final-card .btn-primary{background:#fff!important;color:var(--ink)!important}
.final-card .btn-primary:hover{background:var(--bg)!important}
.final-card .btn-secondary{background:transparent!important;border-color:rgba(255,255,255,.3)!important;color:#fff!important}
.final-card .btn-secondary:hover{background:rgba(255,255,255,.08)!important;border-color:#fff!important}
