/* Inner-page additions. Reuses the tokens and components in /css/style.css (never overrides them). */
body.inner{padding-top:64px}
.skip-link{position:absolute;left:-999px;top:8px;background:var(--blue);color:#fff;padding:8px 16px;border-radius:4px;font-size:.9rem;text-decoration:none;z-index:9999}
.skip-link:focus{left:8px}
.wrap{max-width:1080px;margin:0 auto}
.wrap.narrow{max-width:820px}
.page-hero{background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:#fff;padding:2.2rem 5% 3rem}
.page-hero h1{font-size:2rem;line-height:1.2;font-weight:700;margin:.2rem 0 1rem;max-width:820px}
.page-hero .quick-answer{font-size:1rem;line-height:1.75;color:rgba(255,255,255,.88);max-width:820px}
.page-hero .quick-answer a{color:#fff;text-decoration:underline}
.page-hero .hero-lbl{color:rgba(255,160,160,.95)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;font-size:.78rem;margin-bottom:1.1rem;color:rgba(255,255,255,.7)}
.crumbs li+li::before{content:"\203A";margin-right:.35rem;opacity:.7}
.crumbs a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.in-sec{padding:3.2rem 5%;background:#fff}
.in-sec.alt{background:var(--off)}
.in-h2{font-size:1.45rem;font-weight:700;color:var(--blue-dark);line-height:1.3;margin-bottom:1rem}
.in-h3{font-size:1.02rem;font-weight:700;color:var(--blue-dark);margin:1.4rem 0 .4rem}
.prose p{font-size:.95rem;line-height:1.8;color:var(--text);margin-bottom:1rem;max-width:760px}
.prose a,.faq-list a,.rel-grid a span{color:var(--blue-light)}
.prose a:hover{color:var(--red)}
.tick{list-style:none;display:grid;gap:.6rem;margin:.4rem 0 1rem;max-width:780px}
.tick li{position:relative;padding-left:1.7rem;font-size:.93rem;line-height:1.7}
.tick li::before{content:"\2713";position:absolute;left:0;color:var(--green);font-weight:700}
.tick li strong{color:var(--blue-dark)}
.cols-2{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.1rem;margin-top:1rem}
.card{background:#fff;border:1px solid var(--border);border-radius:11px;padding:1.3rem;box-shadow:var(--sh)}
.card h3{font-size:.95rem;font-weight:700;color:var(--blue-dark);margin-bottom:.4rem}
.card p{font-size:.86rem;line-height:1.65;color:var(--muted)}
.steps{list-style:none;counter-reset:s;display:grid;gap:.9rem;max-width:780px}
.steps li{counter-increment:s;position:relative;padding:.9rem 1rem .9rem 3.4rem;background:#fff;border:1px solid var(--border);border-radius:10px;font-size:.9rem;line-height:1.65}
.steps li::before{content:counter(s);position:absolute;left:1rem;top:.85rem;width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff;font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center}
.steps strong{color:var(--blue-dark)}
.faq-list{display:grid;gap:.7rem}
.faq-list details{background:#fff;border:1px solid var(--border);border-radius:10px;padding:.2rem 1.1rem}
.faq-list summary{cursor:pointer;font-weight:600;color:var(--blue-dark);font-size:.95rem;padding:.8rem 0;line-height:1.5}
.faq-list summary:focus-visible,.nav-cta:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2a7de1;outline-offset:2px}
.faq-list details p{font-size:.9rem;line-height:1.75;color:var(--text);padding:0 0 1rem;max-width:720px}
.in-cta{background:var(--blue-dark);color:#fff;text-align:center;padding:3.2rem 5%}
.in-cta h2{font-size:1.55rem;margin-bottom:.6rem;color:#fff}
.in-cta p{color:rgba(255,255,255,.75);font-size:.9rem;margin-bottom:1.5rem}
.in-cta .cta-btns{display:flex;justify-content:center;gap:.85rem;flex-wrap:wrap}
.rel-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.rel-grid a{display:block;height:100%;background:#fff;border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem;text-decoration:none;color:var(--blue-dark);transition:box-shadow .2s,transform .2s}
.rel-grid a:hover{box-shadow:var(--sh);transform:translateY(-3px)}
.rel-grid strong{display:block;font-size:.92rem;margin-bottom:.25rem}
.rel-grid span{font-size:.8rem;line-height:1.5;color:var(--muted)}
.note{font-size:.82rem;color:var(--muted);border-left:3px solid var(--border);padding-left:.9rem;margin:1rem 0;max-width:760px;line-height:1.65}
.proj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.1rem;list-style:none}
.proj-grid .pcard-img{height:auto;aspect-ratio:4/3}
.pcard-info h3{font-size:.88rem;font-weight:700;margin-bottom:.2rem;color:var(--blue-dark)}
.proj-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;list-style:none}
.proj-nav a{display:inline-block;padding:.35rem .9rem;border:1px solid var(--border);border-radius:999px;font-size:.78rem;text-decoration:none;color:var(--blue);background:#fff}
.proj-nav a:hover{border-color:var(--blue)}
.office{background:#fff;border:1px solid var(--border);border-radius:11px;padding:1.2rem;margin-bottom:1rem}
.office h3{font-size:.95rem;color:var(--blue-dark);margin-bottom:.3rem}
.office address{font-style:normal;font-size:.88rem;line-height:1.7}
.contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:2.5rem;align-items:start}
.cform label{display:block;font-size:.8rem;font-weight:600;color:var(--blue-dark);margin:.2rem 0 .3rem}
.cform input,.cform textarea,.cform select{background:var(--off);border:1px solid var(--border);border-radius:6px;padding:.65rem .86rem;color:var(--text);font-size:.88rem;font-family:'Poppins',sans-serif;width:100%}
.cform textarea{min-height:130px;resize:vertical}
.cform .row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}
.cform .field{margin-bottom:.85rem}
.cform .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cform button{border:none;cursor:pointer}
.cform button[disabled]{opacity:.7;cursor:wait}
.form-msg{padding:.9rem 1rem;border-radius:8px;font-size:.88rem;margin-bottom:1rem}
.form-msg.ok{background:#e7f7ef;color:#07663b;border:1px solid #9ad8b9}
.form-msg.err{background:#fdecee;color:#8f0113;border:1px solid #f1a9b1}
.team-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.9rem;list-style:none}
.founder{display:grid;grid-template-columns:200px 1fr;gap:2rem;align-items:start}
.founder img{width:200px;height:200px;object-fit:cover;border-radius:14px;display:block;background:var(--lgray)}
.fc h2{font-weight:700;font-size:.79rem;margin-bottom:.85rem;color:#fff}
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin:1.2rem 0}
.stat-row div{background:#fff;border:1px solid var(--border);border-radius:10px;padding:1rem;text-align:center}
.stat-row strong{display:block;font-size:1.5rem;color:var(--blue-dark)}
.stat-row span{font-size:.78rem;color:var(--muted)}
@media(max-width:900px){
  .cols-2,.contact-layout,.founder{grid-template-columns:1fr;gap:1.4rem}
  .page-hero h1{font-size:1.6rem}
  .cform .row{grid-template-columns:1fr}
  .founder img{width:140px;height:140px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
