/*
Theme Name: Gregorio Tech
Theme URI: https://gregoriotech.com
Author: Gregorio Tech LLC
Author URI: https://gregoriotech.com
Description: Custom theme for Gregorio Tech LLC — venture studio homepage, with a separate KidPort page template.
Version: 1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: gregorio-tech
*/

.gt-site {--cream:#F5F4EE;
    --cream-deep:#ECEAE0;
    --ink:#15191A;
    --ink-soft:#5C635F;
    --ink-faint:#8B9088;
    --teal:#037C69;
    --teal-deep:#045A4C;
    --hairline:#DAD8CC;
    --hairline-deep:#C9C7B9;}
.gt-site * {box-sizing:border-box;}
html {scroll-behavior:smooth;}
.gt-site {margin:0;
    font-family:'Inter',sans-serif;
    color:var(--ink);
    background:var(--cream);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;}
.gt-site .serif {font-family:'Fraunces',serif;}
.gt-site .mono {font-family:'JetBrains Mono',monospace;}
.gt-site a {color:inherit;}
.gt-site .wrap {max-width:1180px;margin:0 auto;padding:0 40px;}
.gt-site img {max-width:100%;display:block;}
.gt-site :focus-visible {outline:2px solid var(--teal);outline-offset:3px;}
.gt-site header {border-bottom:1px solid var(--hairline);
    background:var(--cream);}
.gt-site nav {display:flex;align-items:center;justify-content:space-between;
    padding:22px 40px;max-width:1180px;margin:0 auto;}
.gt-site .nav-logo {display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px;text-decoration:none;color:var(--ink);letter-spacing:0.01em;}
.gt-site .mark {height:34px;width:auto;flex-shrink:0;}
.gt-site .nav-links {display:flex;gap:36px;list-style:none;margin:0;padding:0;}
.gt-site .nav-links a {text-decoration:none;font-size:13.5px;font-weight:500;color:var(--ink-soft);letter-spacing:0.01em;}
.gt-site .nav-links a:hover {color:var(--ink);}
.gt-site .nav-cta {border:1px solid var(--ink);color:var(--ink);padding:9px 18px;border-radius:100px;
    font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap;}
.gt-site .nav-cta:hover {background:var(--ink);color:var(--cream);}
@media (max-width:820px) {
  .gt-site .nav-links {display:none;}
}
.gt-site .hero {padding:96px 0 0;text-align:center;background:var(--teal);}
.gt-site .est {font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.14em;
    color:rgba(255,255,255,0.7);margin-bottom:28px;}
.gt-site .hero h1 {font-size:clamp(40px,7vw,88px);
    margin:0;font-weight:500;letter-spacing:-0.01em;line-height:1.02;}
.gt-site .hero h1 em {font-style:italic;font-weight:500;color:#FFFFFF;}
.gt-site .hero .lede {max-width:600px;margin:34px auto 0;font-size:17px;color:rgba(255,255,255,0.92);}
.gt-site .hero-actions {margin:36px 0 0;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.gt-site .btn-dark {background:var(--ink);color:var(--cream);padding:13px 26px;border-radius:100px;font-size:14px;font-weight:500;text-decoration:none;}
.gt-site .btn-outline {border:1px solid var(--hairline-deep);color:var(--ink);padding:13px 26px;border-radius:100px;font-size:14px;font-weight:500;text-decoration:none;}
.gt-site .btn-outline:hover {border-color:var(--ink);}
.gt-site .projects-in {margin:64px 0 0;padding-top:22px;border-top:1px solid rgba(255,255,255,0.18);
    font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.12em;
    color:rgba(255,255,255,0.7);text-align:center;text-transform:uppercase;}
.gt-site .sector-tabs {display:flex;gap:10px;justify-content:center;flex-wrap:wrap;
    margin:16px 0 0;padding:0 0 22px;}
.gt-site .tab {font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:0.06em;
    padding:8px 16px;border-radius:100px;border:1px solid rgba(255,255,255,0.4);
    color:rgba(255,255,255,0.85);text-decoration:none;}
.gt-site .tab.is-active {background:var(--ink);border-color:var(--ink);color:var(--cream);}
.gt-site .tab:hover {border-color:#FFFFFF;color:#FFFFFF;}
.gt-site .ventures {padding:0 0 20px;}
.gt-site .v-row {display:grid;grid-template-columns:64px 1.6fr 2fr auto;gap:28px;align-items:center;
    padding:38px 0;border-top:1px solid var(--hairline);}
.gt-site .ventures .wrap>.v-row:last-child {border-bottom:1px solid var(--hairline);}
.gt-site .v-idx {font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--ink-faint);}
.gt-site .v-name {font-size:clamp(24px,3.4vw,34px);font-weight:500;margin:0;}
.gt-site .v-title {min-width:0;}
.gt-site .v-subtitle {font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:0.03em;
    color:var(--ink-faint);margin:8px 0 0;}
.gt-site .v-name .tag {display:inline-block;margin-left:12px;font-family:'JetBrains Mono',monospace;font-size:10.5px;
    letter-spacing:0.05em;vertical-align:middle;color:var(--teal-deep);background:rgba(3,124,105,0.08);
    padding:4px 10px;border-radius:100px;}
.gt-site .v-desc {font-size:14.5px;color:var(--ink-soft);margin:0;max-width:440px;}
.gt-site .v-link {font-size:13.5px;font-weight:500;text-decoration:none;white-space:nowrap;
    border-bottom:1px solid var(--ink);padding-bottom:2px;}
.gt-site .v-row.queued {opacity:0.55;}
.gt-site .v-row.queued .v-link {border-bottom-color:var(--hairline-deep);color:var(--ink-faint);}
@media (max-width:860px) {
  .gt-site .v-row {grid-template-columns:36px 1fr;grid-template-areas:"idx name" ". desc" ". link";row-gap:10px;}
  .gt-site .v-idx {grid-area:idx;}
  .gt-site .v-name, .gt-site .v-title {grid-area:name;}
  .gt-site .v-desc {grid-area:desc;max-width:100%;}
  .gt-site .v-link {grid-area:link;justify-self:start;}
}
.gt-site .mission {background:var(--cream-deep);padding:110px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);}
.gt-site .mission-inner {max-width:820px;margin:0 auto;text-align:center;}
.gt-site .mission .eyebrow {font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.12em;color:var(--teal-deep);margin-bottom:22px;}
.gt-site .mission blockquote {font-family:'Fraunces',serif;font-style:italic;font-weight:400;
    font-size:clamp(24px,3.6vw,38px);line-height:1.35;margin:0 0 40px;color:var(--ink);}
.gt-site .principles {display:grid;grid-template-columns:repeat(3,1fr);gap:0;text-align:left;margin-top:56px;border-top:1px solid var(--hairline-deep);}
.gt-site .principle {padding:28px 24px 0;border-left:1px solid var(--hairline-deep);}
.gt-site .principle:first-child {border-left:none;padding-left:0;}
.gt-site .principle .num {font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--ink-faint);display:block;margin-bottom:10px;}
.gt-site .principle h3 {font-size:15.5px;margin:0 0 6px;font-weight:600;}
.gt-site .principle p {font-size:13.5px;color:var(--ink-soft);margin:0;}
@media (max-width:760px) {
  .gt-site .principles {grid-template-columns:1fr;}
  .gt-site .principle {border-left:none;border-top:1px solid var(--hairline-deep);padding:24px 0 0;}
  .gt-site .principle:first-child {border-top:none;}
}
.gt-site .trends {padding:100px 0;}
.gt-site .section-head {max-width:640px;margin:0 0 56px;}
.gt-site .section-head .eyebrow {font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.12em;color:var(--teal-deep);margin-bottom:16px;}
.gt-site .section-head h2 {font-family:'Fraunces',serif;font-weight:500;font-size:clamp(26px,3.4vw,36px);margin:0 0 14px;}
.gt-site .section-head p {font-size:15.5px;color:var(--ink-soft);margin:0;}
.gt-site .trend-cols {display:grid;grid-template-columns:1fr 1fr;gap:0 64px;}
.gt-site .trend-col h3 {font-family:'JetBrains Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:0.08em;
    color:var(--ink-faint);margin:0 0 8px;padding-bottom:20px;border-bottom:1px solid var(--hairline-deep);}
.gt-site .stat {display:grid;grid-template-columns:110px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--hairline);align-items:baseline;}
.gt-site .stat .num {font-family:'Fraunces',serif;font-size:30px;font-weight:500;color:var(--ink);}
.gt-site .stat p {margin:0;font-size:13.5px;color:var(--ink-soft);}
.gt-site .trend-source {font-size:12px;color:var(--ink-faint);margin-top:28px;}
@media (max-width:820px) {
  .gt-site .trend-cols {grid-template-columns:1fr;gap:48px;}
}
.gt-site .cta-band {background:var(--ink);color:var(--cream);text-align:center;padding:100px 0;}
.gt-site .cta-band .eyebrow {font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.12em;color:#8FD9C4;margin-bottom:20px;}
.gt-site .cta-band h2 {font-family:'Fraunces',serif;font-style:italic;font-weight:400;font-size:clamp(30px,4.2vw,48px);margin:0 0 18px;}
.gt-site .cta-band p {font-size:15.5px;color:#B9BEB8;max-width:480px;margin:0 auto 34px;}
.gt-site .cta-band .btn-dark {background:var(--cream);color:var(--ink);}
.gt-site .gt-contact-form {display:flex;gap:10px;justify-content:center;flex-wrap:wrap;max-width:520px;margin:0 auto;}
.gt-site .gt-contact-input,
.gt-site .gt-contact-select {font-family:'Inter',sans-serif;font-size:14px;padding:13px 18px;border-radius:100px;
    border:1px solid rgba(255,255,255,0.24);background:rgba(255,255,255,0.06);color:var(--cream);min-width:200px;flex:1 1 200px;}
.gt-site .gt-contact-input::placeholder {color:#B9BEB8;}
.gt-site .gt-contact-select {color:var(--cream);}
.gt-site .gt-contact-select option {color:var(--ink);background:var(--cream);}
.gt-site .gt-contact-form .btn-dark {flex:0 0 auto;border:none;cursor:pointer;font-family:'Inter',sans-serif;}
.gt-site .gt-contact-success {font-size:15.5px;color:#8FD9C4;max-width:480px;margin:0 auto;}
.gt-site .gt-contact-error {font-size:14px;color:#F0928C;max-width:480px;margin:0 auto 14px;}
.gt-site footer {padding:56px 0 36px;}
.gt-site .foot-top {display:flex;justify-content:space-between;flex-wrap:wrap;gap:28px;padding-bottom:32px;border-bottom:1px solid var(--hairline);margin-bottom:24px;}
.gt-site .foot-brand .serif {font-size:20px;font-style:italic;}
.gt-site .foot-mark {height:150px;width:auto;margin-bottom:-30px;}
.gt-site .foot-col h4 {font-family:'JetBrains Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-faint);margin:0 0 10px;font-weight:500;}
.gt-site .foot-col p {margin:0;font-size:13.5px;color:var(--ink-soft);}
.gt-site .foot-bottom {display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.gt-site .foot-tagline {font-family:'Fraunces',serif;font-style:italic;color:var(--ink-soft);font-size:14px;}
.gt-site .social-row {display:flex;gap:18px;list-style:none;padding:0;margin:0;}
.gt-site .social-row a {font-size:13px;color:var(--ink-soft);text-decoration:none;}
.gt-site .social-row a:hover {color:var(--ink);}