/* ============================================
   SGT TECH-HUB — stylesheet
   ============================================ */
:root{
  --bg:#F5F5F5;
  --surface:#FFFFFF;
  --ink:#17181C;
  --ink-soft:#57585F;
  --gold:#D4AF37;
  --gold-deep:#A8862A;
  --dark:#111114;
  --line:#E3E1DA;
  --ok:#2E6B4F;
  --radius:2px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter',system-ui,sans-serif;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:'Libre Franklin',sans-serif;letter-spacing:-0.01em;font-weight:800;}
.mono{font-family:'IBM Plex Mono',monospace;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
ul{list-style:none;}

.utility-bar{background:var(--dark);color:#D9D9DE;font-size:13px;padding:8px 0;}
.utility-bar .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;}
.utility-bar strong{color:var(--gold);font-weight:600;}

header{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;}
.header-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:16px;flex-wrap:wrap;}
.brand{display:flex;align-items:center;gap:10px;}
.brand-mark{
  width:38px;height:38px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, var(--gold), var(--gold-deep) 70%, #6b5417 100%);
  display:flex;align-items:center;justify-content:center;
  font-family:'Libre Franklin';font-weight:900;color:var(--dark);font-size:15px;
  box-shadow:0 0 0 2px var(--surface), 0 0 0 3px var(--gold);
}
.brand-text{font-size:19px;font-weight:800;letter-spacing:-0.01em;}
nav{display:flex;gap:22px;flex-wrap:wrap;align-items:center;}
nav a{font-size:13.5px;font-weight:700;color:var(--ink-soft);}
nav a:hover,nav a.active{color:var(--gold-deep);}
.header-actions{display:flex;align-items:center;gap:12px;}
.call-chip{display:flex;flex-direction:column;line-height:1.15;text-align:right;}
.call-chip small{color:var(--ink-soft);font-size:11px;text-transform:uppercase;letter-spacing:.06em;}
.call-chip strong{font-size:15px;font-family:'IBM Plex Mono';}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;font-weight:700;font-size:14px;border-radius:var(--radius);border:1.5px solid transparent;cursor:pointer;transition:all .15s ease;font-family:'Libre Franklin';}
.btn-gold{background:var(--gold);color:var(--dark);border-color:var(--gold);}
.btn-gold:hover{background:var(--gold-deep);border-color:var(--gold-deep);}
.btn-outline{background:transparent;color:var(--dark);border-color:var(--dark);}
.btn-outline:hover{background:var(--dark);color:#fff;}
.btn-block{width:100%;}

.hero{background:var(--surface);border-bottom:1px solid var(--line);padding:56px 0 48px;}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono';font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-deep);background:#FBF4E1;border:1px solid #EFDDA6;padding:6px 12px;border-radius:20px;margin-bottom:18px;}
.hero h1{font-size:clamp(30px,4vw,44px);line-height:1.08;margin-bottom:16px;}
.hero p.lede{font-size:17px;color:var(--ink-soft);max-width:46ch;margin-bottom:26px;}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px;}
.trust-row{display:flex;gap:22px;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-soft);}
.trust-item .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);flex-shrink:0;}

.page-hero{background:var(--surface);border-bottom:1px solid var(--line);padding:44px 0;}
.page-hero h1{font-size:clamp(26px,4vw,38px);margin-bottom:10px;}
.page-hero p{color:var(--ink-soft);font-size:15.5px;max-width:60ch;}

.quote-card{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:var(--radius);padding:26px;box-shadow:0 10px 30px -18px rgba(0,0,0,.25);}
.quote-card h3{font-size:17px;margin-bottom:4px;}
.quote-card .sub{font-size:13px;color:var(--ink-soft);margin-bottom:18px;}
.steps{display:flex;gap:6px;margin-bottom:20px;}
.steps span{flex:1;height:4px;background:var(--line);border-radius:2px;}
.steps span.active{background:var(--gold);}
.field-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin-bottom:8px;display:block;}
.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;}
.option-grid button{text-align:left;padding:10px 12px;border:1.5px solid var(--line);background:var(--bg);border-radius:var(--radius);font-size:13px;font-weight:600;cursor:pointer;font-family:'Inter';display:flex;justify-content:space-between;gap:6px;}
.option-grid button .p{color:var(--gold-deep);font-family:'IBM Plex Mono';font-weight:600;font-size:12px;}
.option-grid button.selected{border-color:var(--gold);background:#FBF4E1;}
.quote-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px dashed var(--line);padding-top:16px;margin-bottom:16px;}
.quote-total .label{font-size:13px;color:var(--ink-soft);}
.quote-total .amount{font-family:'IBM Plex Mono';font-size:28px;font-weight:600;}
.quote-fine{font-size:11.5px;color:var(--ink-soft);margin-top:10px;text-align:center;}

section{padding:56px 0;}
.section-head{max-width:640px;margin-bottom:34px;}
.section-head .eyebrow{margin-bottom:12px;}
.section-head h2{font-size:clamp(24px,3vw,32px);margin-bottom:10px;}
.section-head p{color:var(--ink-soft);font-size:15.5px;}

.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.svc-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s;}
.svc-card:hover{border-color:var(--gold);}
.svc-icon{width:42px;height:42px;border-radius:50%;background:var(--bg);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:19px;margin-bottom:4px;}
.svc-card h4{font-size:16px;}
.svc-card p{font-size:13.5px;color:var(--ink-soft);flex-grow:1;}
.svc-price-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:4px;}
.svc-price{font-family:'IBM Plex Mono';font-weight:600;font-size:15px;}
.svc-price small{font-family:'Inter';color:var(--ink-soft);font-weight:400;font-size:11px;}
.svc-link{font-size:13px;font-weight:700;color:var(--gold-deep);}
.svc-includes{font-size:12.5px;color:var(--ink-soft);padding-left:16px;margin-top:2px;}
.svc-includes li{list-style:disc;margin-bottom:4px;}

.compare{background:var(--dark);color:#fff;border-radius:var(--radius);padding:36px;display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center;}
.compare h2{color:#fff;font-size:24px;margin-bottom:10px;}
.compare p{color:#C7C7CE;font-size:14.5px;max-width:44ch;}
.compare-table{background:#1B1B20;border-radius:var(--radius);overflow:hidden;border:1px solid #2C2C33;}
.compare-row{display:grid;grid-template-columns:1.4fr 1fr 1fr;font-size:13px;padding:12px 16px;border-bottom:1px solid #2C2C33;}
.compare-row:last-child{border-bottom:none;}
.compare-row.head{background:#232329;font-weight:700;color:var(--gold);font-family:'IBM Plex Mono';font-size:11px;text-transform:uppercase;letter-spacing:.05em;}
.compare-row .us{color:var(--gold);font-weight:700;font-family:'IBM Plex Mono';}
.compare-row .them{color:#8C8C94;font-family:'IBM Plex Mono';}

.steps-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.step-card{background:var(--surface);border:1px solid var(--line);padding:24px;border-radius:var(--radius);position:relative;}
.step-num{font-family:'IBM Plex Mono';color:var(--gold-deep);font-weight:600;font-size:13px;border:1px solid var(--gold);width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.step-card h4{font-size:15.5px;margin-bottom:6px;}
.step-card p{font-size:13.5px;color:var(--ink-soft);}

.book-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:36px;display:grid;grid-template-columns:1fr 1fr;gap:36px;}
.book-panel h3{font-size:20px;margin-bottom:8px;}
.book-panel p{color:var(--ink-soft);font-size:14px;margin-bottom:18px;}
.info-line{display:flex;gap:10px;font-size:14px;margin-bottom:12px;align-items:flex-start;}
.info-line b{font-weight:700;}
form.book-form{display:flex;flex-direction:column;gap:12px;}
form.book-form input,form.book-form select,form.book-form textarea{padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--radius);font-family:'Inter';font-size:14px;background:var(--bg);}
form.book-form input:focus,form.book-form select:focus,form.book-form textarea:focus{outline:2px solid var(--gold);border-color:var(--gold);}
form.book-form label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);}
.form-success{display:none;text-align:center;padding:30px 10px;}
.form-success .glyph{font-size:34px;margin-bottom:10px;}
.form-success h4{font-size:16px;margin-bottom:6px;}
.form-success p{color:var(--ink-soft);font-size:13.5px;}

footer{background:var(--dark);color:#B9B9C0;padding:44px 0 26px;margin-top:20px;}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px;margin-bottom:32px;}
footer h5{color:#fff;font-family:'Libre Franklin';font-size:14px;margin-bottom:14px;}
footer .brand-text{color:#fff;}
footer p{font-size:13.5px;line-height:1.7;}
footer li{font-size:13.5px;margin-bottom:9px;}
footer li a:hover{color:var(--gold);}
.footer-bottom{border-top:1px solid #2C2C33;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px;color:#77777E;}
.footer-bottom a{color:var(--gold);font-weight:600;}

.price-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
.price-table th,.price-table td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);font-size:14px;}
.price-table th{background:var(--bg);font-family:'IBM Plex Mono';font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);}
.price-table td.amt{font-family:'IBM Plex Mono';font-weight:600;text-align:right;}
.price-table tr:last-child td{border-bottom:none;}

@media(max-width:880px){
  .hero-grid{grid-template-columns:1fr;}
  .svc-grid{grid-template-columns:1fr 1fr;}
  .compare{grid-template-columns:1fr;}
  .steps-3{grid-template-columns:1fr;}
  .book-panel{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
}
@media(max-width:560px){
  .svc-grid{grid-template-columns:1fr;}
  .option-grid{grid-template-columns:1fr;}
  .price-table{font-size:12.5px;}
}
