:root{--ink:#111317;--charcoal:#1b1e23;--charcoal2:#242830;--silver:#aeb4bd;--silver2:#d8dce1;--mist:#f1f2f3;--paper:#fafafa;--white:#fff;--text:#25282d;--muted:#686e77;--line:#d4d7db;--shadow:0 20px 60px rgba(10,12,15,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#eceeef;line-height:1.55}img{display:block;max-width:100%}a{color:inherit}.shell{width:min(1180px,92vw);margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid #dadde1;backdrop-filter:blur(12px)}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:185px;height:66px;object-fit:contain;object-position:left center}.nav-links{display:flex;align-items:center;gap:26px;font-weight:700;font-size:.93rem}.nav-links a{text-decoration:none}.nav-cta{background:var(--ink);color:#fff!important;padding:13px 18px;border:1px solid var(--ink)}
.hero{background:var(--ink);color:white}.hero-grid{min-height:620px;display:grid;grid-template-columns:.85fr 1.15fr}.hero-copy{padding:84px 7vw 70px max(4vw,24px);display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#0c0e12,#1e2229)}.eyebrow{font-size:.74rem;letter-spacing:.23em;text-transform:uppercase;font-weight:800;color:#c8cdd4}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;margin:0}h1{font-size:clamp(3.4rem,6vw,6.4rem);line-height:.88;letter-spacing:-.045em;margin:18px 0 26px}.hero-copy p{font-size:1.08rem;max-width:540px;color:#e2e5e9;margin:0 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;font-weight:800;padding:15px 23px;border:1px solid #fff}.btn-light{background:#fff;color:#121418}.btn-ghost{color:#fff;background:transparent}.hero-image{position:relative;min-height:620px;background-image:linear-gradient(90deg,rgba(12,14,18,.35),rgba(12,14,18,.02)),url('image-1.jpg');background-size:cover;background-position:center}.hero-image:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.trust{background:#15181d;color:white}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:24px 28px;border-right:1px solid rgba(255,255,255,.16)}.trust-item:last-child{border-right:0}.trust strong{font-family:Georgia,serif;font-size:1.35rem;display:block}.trust span{color:#c7ccd3;font-size:.9rem}
section{padding:88px 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}.section-head h2{font-size:clamp(2.4rem,4vw,4.2rem);line-height:1.02;max-width:760px}.section-head p{max-width:420px;color:var(--muted)}
.services{background:#f7f7f6}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{position:relative;min-height:430px;overflow:hidden;background:#222;color:#fff;box-shadow:var(--shadow)}.service-photo{position:absolute;inset:0;background-image:linear-gradient(180deg,rgba(12,14,18,.08) 30%,rgba(12,14,18,.92) 100%),url('image-2.jpg');background-size:cover}.service-card:nth-child(1) .service-photo{background-position:20% center}.service-card:nth-child(2) .service-photo{background-position:43% center}.service-card:nth-child(3) .service-photo{background-position:66% center}.service-card:nth-child(4) .service-photo{background-position:85% center;filter:grayscale(.35)}.service-content{position:absolute;left:0;right:0;bottom:0;padding:26px}.service-content h3{font-size:1.65rem;margin-bottom:9px}.service-content p{margin:0;color:#e6e8eb;font-size:.94rem}.service-note{margin-top:24px;padding:19px 22px;background:#e9ebed;color:#50555d;border-left:3px solid #858c96}
.about{background:#e7e9ec}.about-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}.portrait-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.portrait{background:white;box-shadow:var(--shadow)}.portrait img{width:100%;height:420px;object-fit:cover;object-position:top}.portrait b{display:block;padding:13px 16px;background:#17191e;color:#fff}.about-copy h2{font-size:clamp(2.7rem,5vw,4.8rem);line-height:.95;margin:14px 0 24px}.about-copy .lead{font-size:1.22rem;font-weight:700;color:#32363c}.about-copy p{color:#575d65}
.service-area{background:linear-gradient(135deg,#171a20,#292e37);color:#fff}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.area-grid h2{font-size:clamp(2.7rem,4vw,4.4rem);line-height:1}.area-grid p{color:#d4d8de;max-width:580px}.counties{display:grid;grid-template-columns:1fr 1fr;gap:12px}.county{padding:17px 19px;border:1px solid #727984;background:rgba(255,255,255,.035);font-weight:800}
.request{background:#cfd3d8}.request-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:45px;align-items:start}.request-intro{padding-top:28px}.request-intro h2{font-size:clamp(2.7rem,4.6vw,4.8rem);line-height:.95;margin:14px 0 22px}.request-intro p{color:#424850;font-size:1.03rem}.notice{margin-top:24px;padding:18px;background:rgba(255,255,255,.55);border-left:3px solid #686f79}
.form-card{background:#252a31;color:#fff;padding:34px;box-shadow:var(--shadow);border:1px solid #626a75}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:30px}.step{background:#363c45;color:#d8dce2;text-align:center;padding:10px;font-size:.8rem;font-weight:800}.form-card h3{font-size:2rem;margin:25px 0 16px;padding-bottom:10px;border-bottom:1px solid #5e6671}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.full{grid-column:1/-1}label{display:block;font-weight:800;font-size:.92rem;margin-bottom:6px}.req{font-size:.68rem;letter-spacing:.08em;color:#d5dae1;display:block}input,select,textarea{width:100%;border:1px solid #89919c;background:#f4f5f6;color:#17191d;padding:13px 14px;font:inherit;border-radius:0}input:focus,select:focus,textarea:focus{outline:3px solid rgba(211,216,223,.28);border-color:#fff}textarea{min-height:105px;resize:vertical}.helper{font-size:.78rem;color:#cdd2d9;margin-top:5px}.checkline{display:flex;gap:10px;align-items:flex-start;margin:18px 0}.checkline input{width:auto;margin-top:5px}.cosigner{display:none;padding:18px;background:#303640;border:1px solid #59616d;margin-top:8px}#add-cosigner:checked ~ .cosigner{display:block}.submit{width:100%;padding:16px;background:#fff;color:#15171b;border:0;font-size:1rem;font-weight:900;cursor:pointer}
.faq{background:#f5f5f4}.faq h2{font-size:clamp(2.4rem,4vw,4rem);margin:12px 0 30px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}details{background:#fff;border:1px solid #d1d4d8;padding:18px 20px}summary{font-weight:800;cursor:pointer}details p{color:#5b6169}
.contact{background:#e5e7ea}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.contact h2{font-size:clamp(2.8rem,4.5vw,4.7rem);line-height:.98;margin:12px 0 24px}.contact-list p{margin:9px 0;font-size:1.02rem}.contact-panel{background:#171a20;color:#fff;padding:42px}.contact-panel h3{font-size:2rem;margin-bottom:18px}.footer{background:#101216;color:#d8dce1;padding:38px 0}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:flex-end}.footer small{color:#aeb4bc}
@media(max-width:900px){.nav-links a:not(.nav-cta){display:none}.hero-grid,.about-grid,.area-grid,.request-grid,.contact-grid{grid-template-columns:1fr}.hero-copy{padding:58px 6vw}.hero-image{min-height:430px;background-position:center}.trust-grid,.service-grid{grid-template-columns:1fr 1fr}.portrait img{height:360px}.request-intro{padding-top:0}}
@media(max-width:600px){.nav{height:76px}.brand img{width:145px;height:56px}.nav-cta{padding:11px 13px;font-size:.82rem}.hero-grid{min-height:unset}.hero-copy{padding:48px 22px}h1{font-size:3.5rem}.hero-image{min-height:330px}.trust-grid,.service-grid,.form-grid,.faq-grid,.counties{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}.portrait-grid{gap:10px}.portrait img{height:285px}section{padding:64px 0}.form-card{padding:22px 17px}.steps{grid-template-columns:1fr 1fr}.footer-grid{display:block}}

/* =========================================================
   APPROVED UPDATE — HEADER LOGO + FULL-WIDTH HERO ONLY
   No other website sections are changed.
   ========================================================= */

/* Give the original TSC logo more presence in the header. */
.nav {
  height: 108px;
}

.brand {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
}

.brand img {
  width: 245px;
  height: 90px;
  object-fit: contain;
  object-position: left center;
}

/* Use the existing hero photograph across the entire hero section. */
.hero {
  position: relative;
  overflow: hidden;
}

.hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  min-height: 650px;
}

/* Photograph fills the complete hero from edge to edge. */
.hero-image {
  grid-area: 1 / 1;
  position: relative;
  z-index: 0;
  min-height: 650px;
  background-image:
    linear-gradient(
      90deg,
      rgba(8, 10, 14, .94) 0%,
      rgba(8, 10, 14, .82) 25%,
      rgba(8, 10, 14, .48) 48%,
      rgba(8, 10, 14, .10) 72%,
      rgba(8, 10, 14, .02) 100%
    ),
    url('image-1.jpg');
  background-size: cover;
  background-position: center center;
}

/* Wording overlays the left side while remaining legible. */
.hero-copy {
  grid-area: 1 / 1;
  position: relative;
  z-index: 1;
  width: min(650px, 54vw);
  min-height: 650px;
  padding: 78px 28px 72px max(5vw, 42px);
  background: transparent;
  justify-content: center;
}

.hero-copy p {
  max-width: 520px;
}

/* Keep the image's right-side signing scene visible. */
.hero-image::after {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.10);
}

/* Tablet */
@media (max-width: 900px) {
  .nav {
    height: 96px;
  }

  .brand img {
    width: 210px;
    height: 78px;
  }

  .hero-grid,
  .hero-copy,
  .hero-image {
    min-height: 590px;
  }

  .hero-copy {
    width: min(610px, 68vw);
    padding: 64px 30px 60px 6vw;
  }

  .hero-image {
    background-position: 58% center;
  }
}

/* Phone */
@media (max-width: 600px) {
  .nav {
    height: 88px;
  }

  .brand img {
    width: 178px;
    height: 68px;
  }

  .hero-grid,
  .hero-copy,
  .hero-image {
    min-height: 610px;
  }

  .hero-copy {
    width: 100%;
    min-height: 610px;
    padding: 60px 22px 46px;
    justify-content: flex-end;
    background:
      linear-gradient(
        180deg,
        rgba(8,10,14,.12) 0%,
        rgba(8,10,14,.30) 38%,
        rgba(8,10,14,.93) 72%,
        rgba(8,10,14,.98) 100%
      );
  }

  .hero-image {
    background-image: url('image-1.jpg');
    background-position: 60% center;
  }

  .hero-copy h1 {
    font-size: clamp(3rem, 15vw, 4rem);
  }
}
