/*
Theme Name: Tech Revive Editable
Author: Tech Revive
Description: Editable block theme for Tech Revive. Edit the homepage using Appearance > Editor > Templates > Front Page.
Version: 2.1.0
Requires at least: 6.3
Requires PHP: 7.4
Text Domain: tech-revive-editable
*/
html{scroll-behavior:smooth}*{box-sizing:border-box}.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block:0}.tr-wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.tr-topline{background:#0b3158;color:#fff;text-align:center;padding:10px 24px;font-size:.875rem}.tr-topline p{margin:0}.tr-header{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:30px}.tr-brand{font-size:27px;font-weight:900;letter-spacing:-1px;line-height:1;margin:0}.tr-brand a{color:#0b4078;text-decoration:none}.tr-brand strong{color:#c91c2b}.tr-brand-sub{font-size:10px;font-weight:700;letter-spacing:2px;margin:8px 0 0}.tr-nav{display:flex;gap:32px}.tr-nav p{margin:0;font-size:15px;font-weight:600}.tr-nav a{text-decoration:none;color:#172130}.tr-header .wp-block-buttons{flex-shrink:0}.wp-block-buttons{gap:18px}.wp-block-button__link{padding:15px 23px;font-size:15px;line-height:1.5;text-decoration:none}.tr-outline .wp-block-button__link{background:transparent;color:#0b4078;border:1px solid #dce3e9}.tr-navy .wp-block-button__link{background:#0b4078}.tr-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:65px;padding-block:60px 80px}.tr-eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:800;color:#0b4078;margin:0 0 24px}.tr-hero h1{font-size:clamp(48px,5.4vw,76px);font-weight:800;letter-spacing:-3.5px;line-height:1.04;margin:0 0 26px}.tr-intro{font-size:18px;color:#536171;margin:0 0 30px}.tr-note{font-size:14px;color:#657181;margin-top:26px}.tr-brand-panel{border:1px solid #dce3e9;border-radius:12px;box-shadow:14px 14px 0 #eef2f6;overflow:hidden;background:#fff;transform:rotate(-1deg)}.tr-brand-panel .wp-block-image{margin:0}.tr-brand-panel img{width:100%;height:auto;display:block}.tr-panel-label{font-size:12px;font-weight:700;letter-spacing:1.7px;color:#0b4078;padding:24px 26px 0;margin:0}.tr-panel-footer{background:#0b4078;color:#fff;padding:18px 26px;margin:0;font-size:14px}.tr-strip{border-block:1px solid #e0e6ec;background:#f6f8fa}.tr-strip-inner{display:flex;justify-content:space-between;gap:20px;padding-block:26px}.tr-strip p{margin:0;font-weight:600;color:#30465d;font-size:15px}.tr-section{padding-block:95px 100px}.tr-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:42px}.tr-section-heading>p{color:#536171}.tr-section h2,.tr-about h2{font-size:46px;letter-spacing:-1.8px;line-height:1.12;margin:0;font-weight:750}.tr-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.tr-card{border:1px solid #dce3e9;border-radius:7px;padding:27px 25px;display:flex;flex-direction:column}.tr-card .tr-number{font-size:14px;color:#8190a0;margin:0 0 30px}.tr-card h3{font-size:21px;line-height:1.3;letter-spacing:-.6px;margin:0 0 14px}.tr-card p{font-size:15px;color:#536171;margin:0 0 26px}.tr-card p:last-child{margin-top:auto;margin-bottom:0}.tr-card a{font-size:14px;font-weight:700;text-decoration:none}.tr-about{background:#0a315a;color:#fff;padding-block:80px}.tr-two-col{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.tr-about p{font-size:17px;color:#e0e9f3;margin:0 0 20px}.tr-about .tr-eyebrow{color:#a8c6e8;font-size:12px}.tr-about a{color:#fff}.tr-phone{font-size:26px;font-weight:700}.tr-phone a{text-decoration:none}.tr-hours{background:#f2f5f8;border-radius:9px;padding:34px}.tr-hours-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:23px;border-bottom:2px solid #0b4078}.tr-hours-heading h3{font-size:23px;margin:0}.tr-hours-heading p{font-size:14px;color:#657181;margin:0}.tr-hour{display:flex;justify-content:space-between;gap:20px;padding-block:14px;border-bottom:1px solid #dbe2e9}.tr-hour p{margin:0;font-size:15px}.tr-hour p:last-child{font-weight:600}.tr-hour:last-child{border:0}.tr-hour:last-child p:last-child{color:#bd1c29}.tr-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:34px;border-top:1px solid #dce3e9}.tr-footer>p{font-size:14px;color:#657181}a:focus-visible{outline:3px solid #c91c2b;outline-offset:4px}
@media(max-width:1000px){.tr-wrap{width:calc(100% - 48px)}.tr-hero{gap:35px}.tr-cards{grid-template-columns:repeat(2,1fr)}.tr-two-col{gap:48px}.tr-nav{gap:20px}}
@media(max-width:680px){.tr-wrap{width:calc(100% - 40px)}.tr-header{flex-wrap:wrap;gap:22px}.tr-header>.wp-block-buttons{margin-left:auto}.tr-header .wp-block-button__link{font-size:12px;padding:10px}.tr-brand{font-size:24px}.tr-nav{order:3;width:100%;justify-content:space-between}.tr-hero{grid-template-columns:1fr;padding-block:34px 48px;gap:35px}.tr-hero h1{font-size:56px;letter-spacing:-2.7px}.tr-eyebrow{font-size:11px;letter-spacing:1px}.tr-intro{font-size:16px}.tr-brand-panel{transform:none;box-shadow:7px 7px 0 #eef2f6}.tr-strip-inner{display:grid;grid-template-columns:1fr 1fr}.tr-strip p{font-size:14px}.tr-section{padding-block:60px}.tr-section-heading{display:block;margin-bottom:30px}.tr-section h2,.tr-about h2{font-size:37px}.tr-cards{grid-template-columns:1fr}.tr-card p{font-size:16px}.tr-about{padding-block:58px}.tr-two-col{grid-template-columns:1fr;gap:34px}.tr-hours{padding:25px}.tr-hour p{font-size:14px}.tr-footer{flex-direction:column;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Tech Revive: phone and tablet improvements. Content is unchanged. */
.tr-hero, .tr-two-col { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.tr-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.tr-header > *, .tr-hero > *, .tr-two-col > *, .tr-cards > * { min-width: 0; }
.tr-wrap img { max-width: 100%; height: auto; }
@media (max-width: 1100px) {
  .tr-wrap { width: calc(100% - 48px); }
  .tr-header { flex-wrap: wrap; gap: 20px; padding-block: 24px; }
  .tr-header > .wp-block-buttons { margin-left: auto; }
  .tr-header .tr-brand { font-size: 32px !important; line-height: 1.1; letter-spacing: -1px; text-align: left; }
  .tr-header .tr-brand-sub { font-size: 12px !important; line-height: 1.5; letter-spacing: 1px; margin-top: 8px; }
  .tr-nav { order: 3; width: 100%; flex-wrap: wrap; justify-content: flex-start; gap: 12px 28px; }
  .tr-nav p { font-size: 16px !important; margin: 0; }
  .tr-nav a { display: inline-flex; align-items: center; min-height: 44px; }
  .tr-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tr-hero, .tr-two-col { gap: 32px; }
  .tr-hero h1 { font-size: clamp(2.5rem, 5.3vw, 3.5rem) !important; line-height: 1.08; letter-spacing: -1.5px; }
  .tr-section h2, .tr-about h2 { font-size: clamp(2rem, 4vw, 2.7rem) !important; line-height: 1.15; }
  .tr-section { padding-block: 64px; }
  .tr-about { padding-block: 60px; }
  .tr-brand-panel { transform: none; box-shadow: 6px 6px 0 #eef2f6; }
  .tr-hours { padding: 24px; }
  .tr-hours-heading { flex-wrap: wrap; gap: 8px; }
  .tr-footer { flex-wrap: wrap; }
  .tr-footer .tr-brand { font-size: 26px !important; }
  .tr-footer .tr-brand-sub { font-size: 12px !important; }
}
@media (max-width: 800px) {
  .tr-hero, .tr-two-col { grid-template-columns: minmax(0, 1fr); }
  .tr-hero { padding-block: 32px 48px; }
  .tr-hero h1 { font-size: clamp(2.3rem, 7vw, 3.5rem) !important; }
  .tr-brand-panel { width: 100%; max-width: 520px; margin-inline: auto; }
  .tr-section-heading { display: block; }
  .tr-section-heading > p { margin-top: 20px; }
  .tr-strip-inner { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
}
@media (max-width: 600px) {
  .tr-wrap { width: calc(100% - 40px); }
  .tr-topline { padding: 10px 16px; }
  .tr-topline p { font-size: 13px !important; line-height: 1.5; }
  .tr-header { gap: 16px; padding-block: 22px 12px; }
  .tr-header .tr-brand { font-size: clamp(24px, 6.8vw, 30px) !important; }
  .tr-header .tr-brand-sub { font-size: 10px !important; letter-spacing: .8px; }
  .tr-header .wp-block-button__link { min-height: 44px; padding: 11px 12px; font-size: 13px !important; }
  .tr-nav { justify-content: space-between; gap: 8px 16px; }
  .tr-nav p { font-size: 15px !important; }
  .tr-cards { grid-template-columns: minmax(0, 1fr); }
  .tr-card { padding: 24px; }
  .tr-section, .tr-about { padding-block: 48px; }
  .tr-hero p:not(.tr-eyebrow):not(.tr-note):not(.tr-panel-label):not(.tr-panel-footer), .tr-card p:not(.tr-number), .tr-about p:not(.tr-eyebrow) { font-size: 16px !important; line-height: 1.65; }
  .tr-hero .tr-eyebrow { font-size: 11px !important; letter-spacing: .8px; }
  .tr-hero .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; }
  .tr-hero .wp-block-button { flex: 1 1 145px; }
  .tr-hero .wp-block-button__link { width: 100%; min-height: 48px; padding: 13px 16px; }
  .tr-hours { padding: 22px; }
  .tr-hour { gap: 12px; }
  .tr-hour p { font-size: 14px !important; }
  .tr-hour p:last-child { text-align: right; }
  .tr-phone { font-size: 24px !important; }
  .tr-strip p { font-size: 14px !important; }
  .tr-footer { align-items: flex-start; gap: 20px; }
}
