/*
Theme Name: Tenxora 2026
Theme URI: https://tenxora.services/
Author: Tenxora
Description: Standalone Tenxora theme: the redesigned home page and Our Team page (pre-built bundles in /site) plus on-brand templates for blog posts and other pages. Inner-page styles are copied from the live Tenxora theme 1.3.1.
Version: 1.3.4
Requires at least: 6.0
Requires PHP: 7.4
License: Proprietary
Text Domain: tenxora
*/

/* Styles for the inner pages (blog, posts, other pages). The home page carries its own stylesheet. */
:root {
  --tx-treen: #08e88c;
  --tx-blue: #1a73e9;
  --tx-ink: #000;
  --tx-muted: rgba(0, 0, 0, 0.62);
  --tx-line: rgba(0, 0, 0, 0.08);
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
body {
  margin: 0;
  background: #fff;
  color: var(--tx-ink);
  font-family: "Google Sans Flex", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size: 18px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
a {
  color: var(--tx-blue);
}
img {
  max-width: 100%;
  height: auto;
}
.tx-wrap {
  width: min(100% - 32px, 1120px);
  margin: 0 auto;
}
.tx-header {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(255, 255, 255, 0.88);
  -webkit-backdrop-filter: blur(16px) saturate(1.6);
  backdrop-filter: blur(16px) saturate(1.6);
  border-bottom: 1px solid var(--tx-line);
}
.admin-bar .tx-header {
  top: 32px;
}
.tx-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  height: 76px;
}
.tx-logo img {
  display: block;
  width: 160px;
  height: auto;
}
.tx-nav {
  display: flex;
  align-items: center;
  gap: 6px;
}
.tx-nav a {
  padding: 10px 18px;
  border-radius: 999px;
  color: var(--tx-ink);
  text-decoration: none;
  font-size: 16px;
}
.tx-nav a:hover {
  background: rgba(0, 0, 0, 0.05);
}
.tx-nav a.tx-cta {
  background: #000;
  color: #fff;
}
.tx-menu-btn {
  display: none;
}
@media (max-width: 760px) {
  .tx-menu-btn {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 0;
    border-radius: 999px;
    background: #000;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
  }
  .tx-nav {
    display: none;
    position: absolute;
    top: 76px;
    left: 10px;
    right: 10px;
    flex-direction: column;
    align-items: stretch;
    padding: 10px;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 20px 50px rgba(0, 30, 80, 0.18);
  }
  .tx-nav.is-open {
    display: flex;
  }
  .tx-nav a {
    padding: 14px 18px;
    font-size: 18px;
  }
  .tx-nav a.tx-cta {
    text-align: center;
    margin-top: 6px;
  }
}
.tx-main {
  padding: 64px 0 96px;
}
.tx-main h1 {
  font-size: clamp(34px, 5vw, 56px);
  line-height: 1.08;
  letter-spacing: -0.02em;
  font-weight: 500;
  margin: 0 0 16px;
}
.tx-meta {
  color: var(--tx-muted);
  font-size: 15px;
  margin-bottom: 32px;
}
.tx-content {
  max-width: 760px;
}
.tx-content h2,
.tx-content h3 {
  line-height: 1.2;
  font-weight: 600;
  margin: 1.8em 0 0.6em;
}
.tx-posts {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 24px;
  margin-top: 40px;
}
.tx-card {
  display: block;
  padding: 28px;
  border-radius: 28px;
  background: linear-gradient(180deg, #ebefee 0%, #f7f7f7 100%);
  color: inherit;
  text-decoration: none;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.tx-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.08);
}
.tx-card h2 {
  font-size: 22px;
  line-height: 1.25;
  margin: 0 0 10px;
}
.tx-card p {
  margin: 0;
  color: var(--tx-muted);
  font-size: 16px;
}
.tx-pager {
  display: flex;
  justify-content: space-between;
  margin-top: 48px;
}
.tx-footer {
  padding: 40px 0;
  border-top: 1px solid var(--tx-line);
  color: var(--tx-muted);
  font-size: 15px;
}

/* Service pages and accessible enquiry form. */
.tx-content {max-width:none}
.tx-content > p,.tx-content > ol {max-width:790px}
.tx-eyebrow {text-transform:uppercase;letter-spacing:.13em;font-size:13px;font-weight:650;color:#086141;margin:0 0 20px}
.tx-lead {font-size:clamp(24px,3vw,36px);line-height:1.3;letter-spacing:-.025em;margin:20px 0 32px}
.tx-grid {display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:42px 0}
.tx-panel {background:linear-gradient(145deg,#edf5f4,#f7fafb);padding:30px;border:1px solid #e0e8e8;border-radius:26px}
.tx-panel h2,.tx-panel h3 {margin-top:0}
.tx-panel h2 {font-size:26px}
.tx-panel p:last-child {margin-bottom:0}
.tx-step {display:block;font-size:13px;color:#386456;letter-spacing:.08em;margin-bottom:18px}
.tx-contact-grid {display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:start;margin-top:36px}
.tx-contact-grid h2 {margin-top:0}
.tx-form {display:grid;gap:10px}
.tx-form label {font-size:16px;font-weight:550;margin-top:8px}
.tx-form input:not([type=checkbox]),.tx-form select,.tx-form textarea {width:100%;font:inherit;font-size:16px;padding:13px 14px;background:#fff;border:1px solid #b7c9c6;border-radius:12px;color:#12231e}
.tx-form textarea {resize:vertical;min-height:150px}
.tx-form input:focus,.tx-form select:focus,.tx-form textarea:focus {outline:3px solid #8ce6c7;outline-offset:2px;border-color:#0a5c40}
.tx-form .tx-check {display:flex;align-items:flex-start;gap:12px;font-size:14px;font-weight:400;margin:14px 0}
.tx-check input {margin-top:5px;flex-shrink:0;width:18px;height:18px;accent-color:#086141}
.tx-button {display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border-radius:99px;background:#072e25;color:#fff;text-decoration:none;border:0;font:inherit;font-size:16px;font-weight:550;cursor:pointer}
.tx-button:hover {background:#105c46;color:#fff}
.tx-button:focus-visible,a:focus-visible,button:focus-visible {outline:3px solid #168662;outline-offset:4px}
.tx-muted {font-size:14px;color:#52645e;line-height:1.5}
.tx-form p {margin:0 0 8px}
.tx-honeypot {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.tx-notice {padding:20px;border:1px solid #287f61;border-radius:15px;background:#e5f7ed;margin-bottom:24px;scroll-margin-top:120px}
.tx-footer .tx-wrap {display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.tx-footer nav {display:flex;gap:20px;flex-wrap:wrap}
.tx-footer a {color:inherit}
@media(max-width:760px){.tx-main{padding:42px 0 64px}.tx-grid,.tx-contact-grid{grid-template-columns:1fr;gap:22px}.tx-panel{padding:23px}.tx-contact-grid{margin-top:28px}.tx-nav a{font-size:16px}.tx-form-panel{padding:22px 18px}.admin-bar .tx-header{top:46px}}

.tx-breadcrumb{font-size:14px;color:#52645e;margin-bottom:24px;display:flex;gap:10px;flex-wrap:wrap}

/* Odoo service batch: readable long-form sections and responsive actions. */
.tx-content > ul{max-width:790px;padding-left:25px}
.tx-content li{margin:10px 0}
.tx-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:30px 0 42px}
.tx-actions a{overflow-wrap:anywhere}
.tx-evidence{border-left:4px solid #168662;padding:8px 28px;background:#f3f8f6;margin:44px 0;border-radius:0 22px 22px 0;max-width:900px}
.tx-evidence h2{font-size:24px;margin-top:16px}
.tx-evidence p{font-size:16px}
.tx-related{border-top:1px solid #dce6e1;margin-top:48px;padding-top:8px}
.tx-related p{font-size:16px;line-height:2}
.tx-content h2{font-size:clamp(24px,3vw,30px)}
.tx-panel h2{font-size:26px}
@media(max-width:760px){.tx-actions{align-items:flex-start;flex-direction:column;gap:16px}.tx-button{text-align:center;max-width:100%}.tx-evidence{padding:6px 20px}.tx-related p{line-height:2.2}}
