/* ShareP retheme — matches live about.sharep.io (@sharep/tokens-web).
   Values verified against computed styles of rendered elements, 2026-07.
   Load AFTER style.css. Purge LiteSpeed cache on dev after each change. */
:root{
  --color-primary:#1d71b8; --color-primary-hover:#175c99;
  --color-primary-light:#72b3e0; --color-primary-tint:#eef6fc;
  --color-secondary:#0888a6; --color-secondary-hover:#0d6c85;
  --color-background:#f8fafc; --color-foreground:#10141d;
  --color-muted-foreground:#66718a; --color-card:#fff;
  --color-border:#e9edf3; --color-border-secondary:#e5e9f0; --color-input:#e5e9f0;
  --color-accent:#eef6fc; --color-accent-foreground:#13497a;
  --color-ink-900:#10141d;
  --font-sans:"DM Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --radii-button:9999px; --radii-input:9999px; --radii-card:24px;
  --radii-md:8px; --radii-lg:12px; --radii-xl:16px;
  --shadow-sm:0 1px 2px rgba(16,20,29,.06);
  --shadow-md:0 4px 12px rgba(16,20,29,.08);
  --shadow-lg:0 12px 32px rgba(16,20,29,.12);
  --container-max:1200px;
}
/* ---- Base (global body stays 16/#10141d) ---- */
body{font-family:var(--font-sans);font-size:16px;line-height:1.5;
  color:var(--color-foreground);background:var(--color-background);
  -webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--color-foreground);
  line-height:1.25;font-weight:700;margin:0 0 16px;}
h1{font-size:36px;}
h1.hero,.hero h1{font-size:50px;line-height:1.08;letter-spacing:-.035em;font-weight:700;}
h2{font-size:32px;letter-spacing:-.02em;}
h3{font-size:22px;font-weight:600;letter-spacing:normal;}
h4{font-size:20px;font-weight:600;}
p{margin:0 0 16px;}
.lead,.hero p,.hero-subtitle{font-size:19px;color:var(--color-muted-foreground);line-height:1.6;}
a{color:var(--color-secondary);text-decoration:none;}
a:hover{color:var(--color-secondary-hover);text-decoration:underline;}
small,.text-muted{color:var(--color-muted-foreground);font-size:15px;}
/* ---- Buttons (pill, verified 9999px) ---- */
.btn,.wp-block-button__link,button.btn,input[type=submit]{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font-sans);font-weight:500;font-size:15px;line-height:1.4;
  padding:8px 20px;border-radius:9999px;border:1px solid transparent;cursor:pointer;
  transition:background-color .15s,color .15s,border-color .15s;}
.btn,.wp-block-button__link,input[type=submit]{background:var(--color-primary);color:#fff;}
.btn:hover,.wp-block-button__link:hover{background:var(--color-primary-hover);color:#fff;text-decoration:none;}
.btn-secondary{background:var(--color-secondary);color:#fff;}
.btn-secondary:hover{background:var(--color-secondary-hover);}
.btn-outline,.btn-ghost{background:#fff;color:var(--color-primary);
  border:1px solid var(--color-border);font-weight:600;}
.btn-outline:hover{background:var(--color-primary-tint);}
/* ---- Cards ---- */
.card,.feature-card{background:var(--color-card);color:var(--color-foreground);
  border:1px solid var(--color-border);border-radius:24px;padding:20px;box-shadow:var(--shadow-sm);}
/* ---- Inputs (pill) ---- */
input,select,textarea,.form-control{font-family:var(--font-sans);font-size:15px;
  border:1px solid var(--color-input);border-radius:9999px;padding:0 16px;height:44px;
  background:#fff;color:var(--color-foreground);}
textarea{border-radius:16px;padding:12px 16px;height:auto;}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);
  box-shadow:0 0 0 3px rgba(29,113,184,.15);}
/* ---- Layout ---- */
.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:16px;}
.section{padding-block:80px;}

/* ============================ HERO ============================ */
.hero,.frontpage-vtwo .hero-section,.page-hero{background:var(--color-primary-tint);padding-block:96px;}
.hero h1,.frontpage-vtwo h1.hero-title,.page-hero h1{
  font-family:var(--font-sans);font-size:50px;line-height:54px;letter-spacing:-1.75px;
  font-weight:700;color:var(--color-foreground);margin:0 0 20px;}
.hero h1 .first-title,.hero h1 .accent{color:var(--color-primary);}
.hero h1 .second-title{color:var(--color-foreground);}
.wp-block-essential-blocks-advanced-heading .eb-ah-title{
  font-family:var(--font-sans)!important;letter-spacing:-1.75px;font-weight:700;}
.wp-block-cover .eb-ah-title{color:#fff;}
.hero-tint .eb-ah-title{color:var(--color-foreground);}
.hero p,.hero .lead,.frontpage-vtwo .hero-subtitle,.wp-block-cover .eb-ah-subtitle{
  font-size:19px;line-height:1.6;color:var(--color-muted-foreground);max-width:34em;margin:0 0 24px;}
.wp-block-cover .eb-ah-subtitle{color:rgba(255,255,255,.92);}
.hero .btn + .btn,.hero .wp-block-button + .wp-block-button{margin-left:12px;}

/* ============================ HEADER / NAV ============================ */
nav .navbar,header nav{background:#fff;min-height:64px;box-shadow:var(--shadow-sm);}
.navbar-brand img,.logo img{height:32px;width:auto;}
.navbar-nav.menu .nav-link,.navbar-nav .nav-link{
  font-family:var(--font-sans);font-size:16px;font-weight:500;
  color:var(--color-muted-foreground);padding:8px 14px;text-decoration:none;transition:color .15s;}
.navbar-nav .nav-link:hover{color:var(--color-foreground);text-decoration:none;}
.navbar-nav .nav-link.active,.navbar-nav .current-menu-item > .nav-link{
  color:var(--color-foreground);font-weight:600;}
nav .nav-cta,header .btn-cta,.navbar .btn{
  border-radius:9999px;background:var(--color-primary);color:#fff;font-weight:500;font-size:15px;padding:8px 20px;}
nav .nav-cta:hover{background:var(--color-primary-hover);color:#fff;}

/* ======================= FEATURE / SECTOR CARDS ======================= */
.wp-block-essential-blocks-infobox .eb-infobox-wrapper,.feature-card,.sector-card{
  background:var(--color-card);border:1px solid var(--color-border);border-radius:24px;
  padding:24px;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s;}
.wp-block-essential-blocks-infobox .eb-infobox-wrapper:hover,.feature-card:hover{
  box-shadow:var(--shadow-md);transform:translateY(-2px);}
.eb-infobox-image-wrap,.feature-icon{
  width:56px;height:56px;border-radius:16px;background:var(--color-primary);
  display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;}
.eb-infobox-image-wrap img,.feature-icon svg{filter:brightness(0) invert(1);}
.wp-block-essential-blocks-infobox .title,.feature-card h3,.sector-card .title{
  font-size:22px;font-weight:600;color:var(--color-foreground);margin:0 0 8px;}
.wp-block-essential-blocks-infobox .eb-infobox-content p,.feature-card p{
  font-size:16px;color:var(--color-muted-foreground);margin:0;}
.features-section h2,.sectors-section h2{text-align:center;margin-bottom:48px;}

/* ============================ HOW IT WORKS ============================ */
.how-it-works,.hiw-section{padding-block:80px;background:var(--color-background);}
.how-it-works h2,.hiw-section h2{text-align:center;margin-bottom:16px;}
.how-it-works .section-lead{text-align:center;font-size:19px;color:var(--color-muted-foreground);
  max-width:40em;margin:0 auto 48px;}
.hiw-step,.step-card{background:var(--color-card);border:1px solid var(--color-border);
  border-radius:24px;padding:24px;box-shadow:var(--shadow-sm);}
.hiw-step .step-number,.step-card .num{width:40px;height:40px;border-radius:9999px;
  background:var(--color-primary-tint);color:var(--color-accent-foreground);
  font-weight:700;display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;}
.hiw-step h3,.step-card h3{font-size:22px;font-weight:600;margin:0 0 8px;}
.hiw-step p,.step-card p{color:var(--color-muted-foreground);font-size:16px;}

/* ============================ FOOTER ============================ */
.footer,.container-fluid.footer{background:var(--color-ink-900);color:#fff;
  font-family:var(--font-sans);padding-block:64px 32px;}
.footer h3,.footer h4,.footer .footer-title{color:#fff;font-size:16px;font-weight:600;margin:0 0 16px;}
.footer a{color:rgba(255,255,255,.72);font-size:15px;text-decoration:none;transition:color .15s;}
.footer a:hover{color:#fff;text-decoration:none;}
.footer .footer-bottom,.footer .copyright{border-top:1px solid rgba(255,255,255,.12);
  margin-top:32px;padding-top:24px;color:rgba(255,255,255,.56);font-size:14px;}
.footer .legal-links a{color:rgba(255,255,255,.56);}
.footer .legal-links a:hover{color:#fff;}

/* ======================= BLOG / ARCHIVE CARDS ======================= */
.blog-post{display:flex;flex-direction:column;background:var(--color-card);
  border:1px solid var(--color-border);border-radius:24px;overflow:hidden;
  box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s;height:100%;}
.blog-post:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);}
.blog-post .post-thumbnail,.blog-post > a > img,.blog-post img.wp-post-image{
  width:100%;height:200px;object-fit:cover;display:block;}
.blog-post .post-body,.blog-post .blog-post-content{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1;}
.blog-post .post-meta,.blog-post .post-date{font-size:13px;color:var(--color-muted-foreground);
  text-transform:uppercase;letter-spacing:.4px;}
.blog-post h3.post-title,.blog-post .post-title{font-size:20px;line-height:1.3;font-weight:600;
  color:var(--color-foreground);margin:0;}
.blog-post .post-title a{color:var(--color-foreground);text-decoration:none;}
.blog-post .post-title a:hover{color:var(--color-primary);}
.blog-post .post-excerpt,.blog-post p{font-size:15px;color:var(--color-muted-foreground);margin:0;}
.blog-post .read-more,.blog-post .info-click-link{margin-top:auto;align-self:flex-start;
  color:var(--color-primary);font-weight:600;font-size:15px;text-decoration:none;
  display:inline-flex;align-items:center;gap:6px;}
.blog-post .read-more:hover{color:var(--color-primary-hover);text-decoration:none;}
.blog-listing .row,.archive-grid{row-gap:24px;}
.archive-header h1,.page-header h1{margin-bottom:16px;}
.archive-header .archive-lead{font-size:19px;color:var(--color-muted-foreground);margin-bottom:48px;}

/* ==================== WordPress block-content bridge ==================== */
.wp-render-content iframe{max-width:100%;}
.wp-video,.wp-video video{width:100%!important;max-width:100%!important;}
.wp-block-group{margin-bottom:1.5rem;}
.wp-block-group__inner-container{max-width:100%;}
.wp-block-group.clearfix::after,.clearfix::after{content:"";display:table;clear:both;}
.wp-block-image{margin-bottom:1rem;}
.wp-block-image figure{margin:0;display:inline-block;}
.wp-block-image img{height:auto;max-width:100%;vertical-align:bottom;}
.alignleft{float:left;margin:0 1.5rem 1rem 0;max-width:50%;}
.alignright{float:right;margin:0 0 1rem 1.5rem;max-width:50%;}
.aligncenter{display:block;margin-inline:auto;text-align:center;clear:both;}
.alignwide{margin-inline:auto;clear:both;}
.alignfull{width:100%;max-width:100%;margin-inline:auto;clear:both;}
.reference-link-box{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;color:var(--color-primary);}
.reference-link-box p{color:var(--color-primary);}
.wp-block-essential-blocks-row{width:100%;margin-bottom:1.5rem;}
.eb-parent-wrapper,.eb-row-wrapper,.eb-column-inner,.eb-column-wrapper{width:100%;}
.eb-row-root-container{width:100%;display:flex;flex-direction:column;}
.eb-row-inner{display:flex;flex-wrap:wrap;gap:1rem;align-items:stretch;}
.wp-block-essential-blocks-column{flex:1;min-width:0;}
.eb-column-inner{height:100%;display:flex;flex-direction:column;}
.eb-column-inner>*{flex-shrink:0;}
.eb-column-inner>figure{margin-bottom:0;}

/* ============================ Mobile (≤768px) ============================ */
@media (max-width:768px){
  h1.hero,.hero h1{font-size:36px;line-height:1.1;letter-spacing:-.02em;}
  h1{font-size:32px;}
  h2{font-size:26px;}
  .section{padding-block:48px;}
  .lead,.hero p{font-size:17px;}
  .hero,.frontpage-vtwo .hero-section,.page-hero{padding-block:56px;}
  .wp-block-essential-blocks-advanced-heading .eb-ah-title{font-size:36px;line-height:1.1;letter-spacing:-.02em;}
  .wp-block-cover .eb-ah-subtitle{font-size:17px;}
  .how-it-works,.hiw-section{padding-block:48px;}
  .footer,.container-fluid.footer{padding-block:48px 24px;}
  .blog-post .post-thumbnail,.blog-post img.wp-post-image{height:180px;}
  .blog-post .post-body{padding:16px;}
  .eb-row-inner{flex-direction:column;gap:1rem;}
  .wp-block-essential-blocks-column{flex:none;width:100%;}
  .alignleft,.alignright{float:none;display:block;margin:0 auto 1rem;max-width:100%;}
  .wp-block-group__inner-container{padding:0;}
}
