/*
Theme Name: Titan Equipment Placeholder
Theme URI: https://titan-equip.com
Author: BlueStar Communications Group
Author URI: https://bluestarcg.com
Description: Single-page placeholder site for Titan Equipment. Dark, premium one-pager. Built by BSCG.
Version: 1.8
License: Proprietary
Text Domain: titan-placeholder
*/

:root{
    --black:#060808;
    --panel:#0c0e0e;
    --panel-2:#101212;
    --silver:#CCCCCC;
    --dark-gray:#4D4D4D;
    --medium-gray:#B3B3B3;
    --muted:#8a8f8f;
    --line:rgba(204,204,204,.16);
    --red:#B00000;
    --white:#ffffff;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:"Archivo",Arial,sans-serif;
    background:var(--black);
    color:var(--white);
    -webkit-font-smoothing:antialiased;
    line-height:1.6;
    font-weight:300;
  }
  h1,h2,h3{font-weight:800;text-transform:uppercase;line-height:1.02;letter-spacing:.005em}
  .container{width:100%;max-width:1180px;margin:0 auto;padding:0 28px}

  /* NAV */
  header{
    position:fixed;top:0;left:0;right:0;z-index:50;
    transition:background .3s ease,border-color .3s ease,padding .3s ease;
    border-bottom:1px solid transparent;
    padding:22px 0;
  }
  header.scrolled{background:rgba(0,0,0,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);padding:14px 0}
  .nav{display:flex;align-items:center;justify-content:space-between}
  .nav img{height:38px;width:auto;display:block}
  header.scrolled .nav img{height:32px}
  .nav-cta{
    font-family:"Archivo";font-weight:700;text-transform:uppercase;letter-spacing:.14em;
    font-size:12px;color:var(--white);text-decoration:none;
    border:1px solid var(--silver);padding:11px 22px;border-radius:2px;
    transition:all .2s ease;
  }
  .nav-cta:hover{background:var(--white);color:var(--black)}

  /* HERO */
  .hero{
    position:relative;min-height:100vh;display:flex;align-items:flex-end;
    background:#000;overflow:hidden;
  }
  .hero-bg{
    position:absolute;inset:0;
    background:url('assets/hero.jpg?v=17') center center / cover no-repeat;
    transform:scale(1.04);transform-origin:center;will-change:transform;
    transition:transform .35s ease-out;
  }
  .hero-bg::after{
    content:"";position:absolute;inset:0;
    background:
      linear-gradient(180deg, rgba(0,0,0,.42) 0%, rgba(0,0,0,0) 34%, rgba(0,0,0,.12) 58%, rgba(0,0,0,.9) 100%),
      linear-gradient(90deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.08) 52%, rgba(0,0,0,0) 100%);
  }
  .hero-inner{position:relative;z-index:2;padding-bottom:clamp(64px,9vh,120px);padding-top:140px;max-width:860px}
  .eyebrow{
    font-weight:700;text-transform:uppercase;letter-spacing:.34em;font-size:12px;
    color:var(--silver);margin-bottom:26px;
  }
  .eyebrow::before{content:"";display:inline-block;width:30px;height:2px;background:var(--red);vertical-align:middle;margin-right:14px}
  .hero h1{font-size:clamp(52px,9.5vw,128px);letter-spacing:-.01em}
  .hero p.sub{
    font-size:clamp(17px,2.1vw,23px);font-weight:300;color:#e8e9ea;
    margin-top:24px;max-width:560px;
  }
  .hero-actions{margin-top:40px;display:flex;gap:16px;flex-wrap:wrap;align-items:center}

  .btn{
    font-family:"Archivo";font-weight:700;text-transform:uppercase;letter-spacing:.12em;
    font-size:13px;text-decoration:none;cursor:pointer;border:none;
    padding:17px 34px;border-radius:2px;transition:all .2s ease;display:inline-block;
  }
  .btn-red{background:var(--red);color:#fff}
  .btn-red:hover{background:#8a0000}
  .btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45)}
  .btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}

  /* STATEMENT */
  .statement{background:var(--panel);padding:clamp(80px,12vh,150px) 0;border-bottom:1px solid var(--line)}
  .statement .container{max-width:880px;text-align:center}
  .statement .eyebrow{display:inline-block}
  .statement h2{font-size:clamp(30px,4.4vw,52px);margin-bottom:30px}
  .statement p{font-size:clamp(16px,1.6vw,19px);color:#c9cccf;font-weight:300}
  .statement p + p{margin-top:20px}
  .statement strong{color:#fff;font-weight:600}
  .statement .anthem{
    display:inline-block;margin-top:42px;
    border:1px solid rgba(255,255,255,.5);padding:18px 36px;border-radius:2px;
    font-weight:700;text-transform:uppercase;letter-spacing:.1em;
    font-size:clamp(14px,1.7vw,20px);color:#fff;
  }

  /* PILLARS */
  .pillars{position:relative;background:var(--black);padding:clamp(64px,9vh,110px) 0;overflow:hidden}
  .pillars::before{
    content:"";position:absolute;inset:0;z-index:0;
    background:url('assets/texture-aggregate.jpg') center/cover no-repeat;
    opacity:.28;
    transform:scale(var(--texScale,1.06));transform-origin:center;will-change:transform;
    transition:transform .45s ease-out;
  }
  .pillars::after{
    content:"";position:absolute;inset:0;z-index:0;
    background:linear-gradient(180deg, rgba(6,8,8,.85) 0%, rgba(6,8,8,.6) 50%, rgba(6,8,8,.85) 100%);
  }
  .pillars .container{position:relative;z-index:1}
  .pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);border-radius:3px;overflow:hidden;background:rgba(6,8,8,.55);backdrop-filter:blur(2px)}
  .pillar{padding:48px 40px;border-right:1px solid var(--line)}
  .pillar:last-child{border-right:none}
  .pillar .num{font-family:"Archivo Narrow";font-size:13px;letter-spacing:.2em;color:var(--red);font-weight:400;margin-bottom:22px}
  .pillar h3{font-size:26px;margin-bottom:14px}
  .pillar p{color:var(--muted);font-size:15.5px;font-weight:300}

  /* UPTIME / SUPPORT */
  .uptime{background:var(--panel);padding:clamp(72px,10vh,130px) 0;border-top:1px solid var(--line)}
  .uptime .container{max-width:1000px;text-align:center}
  .uptime .eyebrow{display:inline-block}
  .uptime h2{font-size:clamp(30px,4.4vw,52px);margin-bottom:24px}
  .uptime-intro{font-size:clamp(16px,1.7vw,19px);color:#c9cccf;font-weight:300;max-width:660px;margin:0 auto clamp(44px,6vh,64px)}
  .uptime-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;text-align:left}
  .uptime-item .num{font-family:"Archivo Narrow";font-size:13px;letter-spacing:.2em;color:var(--red);font-weight:400;margin-bottom:18px}
  .uptime-item h3{font-size:23px;margin-bottom:14px}
  .uptime-item p{color:var(--muted);font-size:16px;font-weight:300;line-height:1.65}

  /* CONTACT */
  .contact{background:var(--panel-2);padding:clamp(80px,12vh,140px) 0;border-top:1px solid var(--line)}
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
  .contact h2{font-size:clamp(32px,4.6vw,54px);margin-bottom:22px}
  .contact .lead{color:#c9cccf;font-size:17px;max-width:420px;font-weight:300}
  .equip-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0;padding:0;max-width:430px}
  .equip-list li{
    font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;
    color:var(--silver);border:1px solid var(--line);border-radius:2px;padding:9px 14px;
  }
  .equip-list li.more{color:var(--muted);border-style:dashed}
  .contact .meta{margin-top:36px;font-size:14px;color:var(--muted);line-height:2}
  .contact .meta a{color:var(--silver);text-decoration:none}
  .contact .meta a:hover{color:#fff}

  form{display:grid;gap:18px}
  .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  label{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:9px;font-weight:700}
  input,textarea{
    width:100%;background:#000;border:1px solid var(--line);color:#fff;
    padding:14px 16px;font-family:"Archivo";font-size:15px;font-weight:300;border-radius:2px;
    transition:border-color .2s ease;
  }
  input:focus,textarea:focus{outline:none;border-color:var(--silver)}
  textarea{resize:vertical;min-height:120px}
  form .btn{justify-self:start;margin-top:6px}
  .form-note{font-size:12px;color:var(--muted);margin-top:4px}
  .form-success{display:none;padding:16px 18px;border:1px solid var(--red);border-radius:2px;color:#fff;background:rgba(200,16,46,.12);font-size:14px}

  /* FOOTER */
  footer{background:#000;padding:46px 0;border-top:1px solid var(--line)}
  .foot{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
  .foot img{height:46px;opacity:1}
  .foot .legal{font-size:12px;color:#5c6166;text-align:right;line-height:1.7}

  /* RESPONSIVE */
  @media(max-width:860px){
    .contact-grid{grid-template-columns:1fr;gap:44px}
    .uptime-grid{grid-template-columns:1fr;gap:40px}
    .pillar-grid{grid-template-columns:1fr}
    .pillar{border-right:none;border-bottom:1px solid var(--line)}
    .pillar:last-child{border-bottom:none}
  }
  @media(max-width:560px){
    .container{padding:0 20px}
    .nav-cta{padding:9px 16px;font-size:11px}
    .row{grid-template-columns:1fr}
    .hero{min-height:100svh}
    .hero-inner{padding-top:120px;padding-bottom:80px}
    .foot{flex-direction:column;align-items:flex-start}
    .foot .legal{text-align:left}
  }

/* ---- WPForms contact form, themed to match ---- */
.contact .wpforms-container{margin:0!important}
.contact .wpforms-form .wpforms-field{padding:0 0 18px!important}
.contact .wpforms-form .wpforms-field-label{
  color:var(--muted)!important;font-size:11px!important;letter-spacing:.16em!important;
  text-transform:uppercase!important;font-weight:700!important;margin-bottom:9px!important;
}
.contact .wpforms-form .wpforms-required-label{color:var(--red)!important}
.contact .wpforms-form input[type=text],
.contact .wpforms-form input[type=email],
.contact .wpforms-form input[type=tel],
.contact .wpforms-form textarea{
  width:100%!important;background:#000!important;border:1px solid var(--line)!important;
  color:#fff!important;padding:14px 16px!important;font-family:"Archivo",Arial,sans-serif!important;
  font-size:15px!important;font-weight:300!important;border-radius:2px!important;box-shadow:none!important;
}
.contact .wpforms-form input:focus,
.contact .wpforms-form textarea:focus{outline:none!important;border-color:var(--silver)!important}
.contact .wpforms-form textarea{min-height:120px!important;resize:vertical!important}
.contact .wpforms-form .wpforms-field-description{color:var(--muted)!important;font-size:12px!important}
.contact .wpforms-form button.wpforms-submit{
  font-family:"Archivo",Arial,sans-serif!important;font-weight:700!important;text-transform:uppercase!important;
  letter-spacing:.12em!important;font-size:13px!important;background:var(--red)!important;color:#fff!important;
  border:none!important;padding:16px 34px!important;border-radius:2px!important;cursor:pointer!important;
  line-height:1!important;transition:background .2s ease!important;
}
.contact .wpforms-form button.wpforms-submit:hover{background:#8a0000!important}
/* Hide the First / Last sublabels under the Name field */
.contact .wpforms-form .wpforms-field-sublabel{display:none!important}
/* Confirmation message: force light text on the dark/red box */
.contact .wpforms-confirmation-container-full,
.contact .wpforms-confirmation-container{
  background:rgba(176,0,0,.12)!important;border:1px solid var(--red)!important;
  padding:18px 22px!important;border-radius:2px!important;
}
.contact .wpforms-confirmation-container-full,
.contact .wpforms-confirmation-container-full *,
.contact .wpforms-confirmation-container,
.contact .wpforms-confirmation-container *{
  color:#ffffff!important;
}

