/* PetroTechs — site styles */
:root{
  --navy:#0f2740;
  --navy-2:#15314f;
  --accent:#f59e0b;
  --accent-2:#d97706;
  --bg:#f4f6f8;
  --card:#ffffff;
  --text:#1f2937;
  --muted:#6b7280;
  --line:#e5e7eb;
  --ok:#16a34a;
  --radius:10px;
  --shadow:0 1px 3px rgba(0,0,0,.08),0 4px 14px rgba(15,39,64,.06);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--accent-2);text-decoration:none}
a:hover{text-decoration:underline}

/* Header / nav */
.site-header{background:linear-gradient(90deg,var(--navy) 0%,#16395c 55%,#0e7490 140%);color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(0,0,0,.18);border-bottom:3px solid var(--accent)}
.nav-wrap{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 18px;min-height:64px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:20px;letter-spacing:.3px}
.brand:hover{text-decoration:none}
.brand .logo{width:34px;height:34px;flex:0 0 auto}
.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:26px;cursor:pointer;line-height:1}
.nav-links{display:flex;flex-wrap:wrap;gap:2px;list-style:none;margin:0;padding:0}
.nav-links a{color:#dbe4ee;padding:10px 12px;border-radius:6px;font-size:14.5px;font-weight:500;display:block}
.nav-links a:hover{background:var(--navy-2);color:#fff;text-decoration:none}
.nav-links a.active{color:#fff;background:var(--navy-2)}

/* Layout */
.container{max-width:1100px;margin:0 auto;padding:28px 18px 60px}
.page-title{font-size:26px;font-weight:700;color:var(--navy);margin:6px 0 4px}
.page-sub{color:var(--muted);margin:0 0 22px}
.section-title{font-size:18px;font-weight:700;color:var(--navy);margin:30px 0 12px;padding-bottom:8px;border-bottom:2px solid var(--line)}

/* Quick-link grid */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.tile{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:18px 16px;box-shadow:var(--shadow);display:flex;align-items:center;gap:12px;
  color:var(--text);font-weight:600;transition:transform .08s ease,box-shadow .12s ease;
}
.tile:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(15,39,64,.12);text-decoration:none;border-color:#d6dde4}
.tile .ic{width:38px;height:38px;border-radius:8px;background:rgba(245,158,11,.14);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.tile .ic svg{width:20px;height:20px;color:var(--accent-2)}
/* Rotating accent colors on the home tile icons for a bit of life */
.grid .tile:nth-child(7n+1) .ic{background:rgba(245,158,11,.16)} .grid .tile:nth-child(7n+1) .ic svg{color:#d97706}
.grid .tile:nth-child(7n+2) .ic{background:rgba(14,116,144,.14)} .grid .tile:nth-child(7n+2) .ic svg{color:#0e7490}
.grid .tile:nth-child(7n+3) .ic{background:rgba(22,163,74,.14)} .grid .tile:nth-child(7n+3) .ic svg{color:#16a34a}
.grid .tile:nth-child(7n+4) .ic{background:rgba(37,99,235,.14)} .grid .tile:nth-child(7n+4) .ic svg{color:#2563eb}
.grid .tile:nth-child(7n+5) .ic{background:rgba(219,39,119,.13)} .grid .tile:nth-child(7n+5) .ic svg{color:#db2777}
.grid .tile:nth-child(7n+6) .ic{background:rgba(124,58,237,.14)} .grid .tile:nth-child(7n+6) .ic svg{color:#7c3aed}
.grid .tile:nth-child(7n+7) .ic{background:rgba(8,145,178,.14)} .grid .tile:nth-child(7n+7) .ic svg{color:#0891b2}

/* File lists */
.file-group{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px 0;margin-bottom:22px}
.file-group h3{margin:0;padding:14px 18px 8px;color:var(--navy);font-size:16px}
.file-list{list-style:none;margin:0;padding:0}
.file-list li{border-top:1px solid var(--line)}
.file-list li:first-child{border-top:0}
.file-list a{display:flex;align-items:center;gap:10px;padding:12px 18px;color:var(--text);font-weight:500}
.file-list a:hover{background:#f9fafb;text-decoration:none;color:var(--accent-2)}
.file-list a::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--accent);flex:0 0 auto}

/* Embeds */
.embed-frame{width:100%;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;overflow:hidden}
.embed-frame iframe{display:block;width:100%;border:0}

/* Location buttons */
.loc-list{display:flex;flex-wrap:wrap;gap:14px}
.loc-btn{background:var(--navy);color:#fff;padding:18px 26px;border-radius:var(--radius);font-weight:600;font-size:16px;box-shadow:var(--shadow)}
.loc-btn:hover{background:var(--navy-2);text-decoration:none;color:#fff}

/* PIN gate */
.pin-gate{max-width:380px;margin:10px 0 26px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}
.pin-gate label{display:block;font-weight:600;margin-bottom:8px;color:var(--navy)}
.pin-gate input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;font-size:16px}
.pin-gate button{margin-top:12px;width:100%;background:var(--accent);color:#1f2937;border:0;padding:11px;border-radius:8px;font-weight:700;cursor:pointer}
.pin-gate button:hover{background:var(--accent-2);color:#fff}
.hidden{display:none}

/* Forms */
.form-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}
.notice{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:8px;padding:12px 14px;margin:0 0 20px;font-size:14px}
fieldset{border:1px solid var(--line);border-radius:8px;margin:0 0 18px;padding:14px 16px}
legend{font-weight:700;color:var(--navy);padding:0 6px;font-size:15px}
.field{margin:0 0 14px}
.field>label{display:block;font-weight:600;margin-bottom:6px;color:#374151}
.field input[type=text],.field input[type=date],.field input[type=number],.field input[type=email],.field select,.field textarea{
  width:100%;max-width:520px;padding:10px 11px;border:1px solid var(--line);border-radius:8px;font-size:15px;font-family:inherit;background:#fff
}
.field textarea{min-height:80px}
.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 18px}
.checks label,.radios label{display:flex;align-items:center;gap:8px;font-weight:500;padding:4px 0}
.radios{display:flex;gap:22px;flex-wrap:wrap}
.btn-primary{background:var(--accent);color:#1f2937;border:0;padding:13px 30px;border-radius:8px;font-weight:700;font-size:16px;cursor:pointer}
.btn-primary:hover{background:var(--accent-2);color:#fff}
.back-link{display:inline-block;margin-top:16px;color:var(--muted)}

/* Footer */
.site-footer{background:var(--navy);color:#cbd5e1;margin-top:40px}
.footer-wrap{max-width:1100px;margin:0 auto;padding:34px 18px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}
.footer-wrap h4{color:#fff;margin:0 0 12px;font-size:15px}
.footer-brand{display:flex;align-items:center;gap:10px;font-weight:700;color:#fff;font-size:18px;margin-bottom:10px}
.footer-brand .logo{width:30px;height:30px}
.footer-wrap p{margin:4px 0;font-size:14px}
.footer-wrap ul{list-style:none;margin:0;padding:0}
.footer-wrap ul li{margin:6px 0}
.footer-wrap a{color:#cbd5e1;font-size:14px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);text-align:center;padding:14px;font-size:13px;color:#94a3b8}

@media (max-width:820px){
  .nav-toggle{display:block}
  .nav-links{display:none;width:100%;flex-direction:column;padding:8px 0 12px}
  .nav-links.open{display:flex}
  .nav-wrap{flex-wrap:wrap;min-height:56px;padding:8px 16px}
  .footer-wrap{grid-template-columns:1fr}
}

/* Progressive "Add another part" control on service-call forms */
.part-row{padding-top:2px}
.add-part{margin:6px 0 14px;padding:9px 16px;border:1px solid #60a5fa;background:#e0f2fe;border-radius:8px;cursor:pointer;font-weight:600;color:#075985;font-size:14px}
.add-part:hover{background:#bae6fd;border-color:#2563eb}
