/*
Theme Name: TWS Development
Theme URI: https://twsdevelopments.com
Author: TWS Development LLC
Description: Custom WordPress block theme for TWS Development LLC.
Version: 1.2.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: tws-development
*/

html { scroll-behavior: smooth; }
body { margin: 0; }
a { text-decoration-thickness: 1px; text-underline-offset: 3px; }
.tws-card { transition: transform .2s ease, box-shadow .2s ease; }
.tws-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(0,0,0,.18); }
.tws-hero {
  background:
    radial-gradient(circle at 80% 20%, rgba(141,198,63,.22), transparent 32%),
    linear-gradient(135deg, #0b0d0c 0%, #171a18 55%, #0f120f 100%);
}
.tws-accent-line { height: 5px; background: #8dc63f; }


/* =========================================
   TWS DEVELOPMENT LLC — V2 THEME POLISH
   ========================================= */
:root {
  --tws-black:#080a09;
  --tws-dark:#111411;
  --tws-charcoal:#1a1e1a;
  --tws-green:#8dc63f;
  --tws-green-bright:#9bdd38;
  --tws-white:#fff;
  --tws-light:#f4f6f1;
}
html { scroll-behavior:smooth; }
body { background:#fff; color:#171917; }
h1,h2,h3,h4 { font-weight:900; letter-spacing:-.025em; }
p { line-height:1.65; }
header.wp-block-template-part {
  position:sticky; top:0; z-index:999;
  backdrop-filter:blur(10px);
}
header .wp-block-group.alignfull {
  background:linear-gradient(90deg,#080a09 0%,#111511 55%,#172014 100%)!important;
  box-shadow:0 6px 25px rgba(0,0,0,.24);
}
.tws-site-logo { margin:0!important; }
.tws-site-logo img {
  display:block; width:230px!important; height:auto!important;
  max-height:90px; object-fit:contain;
}
header nav a {
  color:#fff!important; font-size:15px; font-weight:700;
  text-transform:uppercase; letter-spacing:.6px;
}
header nav a:hover { color:var(--tws-green)!important; }
.tws-accent-line {
  height:4px;
  background:linear-gradient(90deg,transparent,var(--tws-green),
    var(--tws-green-bright),var(--tws-green),transparent);
}
.wp-block-button__link {
  border-radius:5px!important; padding:15px 26px!important;
  font-weight:900!important; text-transform:uppercase;
  transition:all .25s ease;
}
.wp-block-button__link:hover {
  transform:translateY(-3px);
  box-shadow:0 12px 24px rgba(0,0,0,.2);
}
.has-green-background-color.wp-block-button__link {
  background:linear-gradient(135deg,#9adb3c,#7db82e)!important;
}
.tws-hero {
  position:relative; overflow:hidden;
  background:
    radial-gradient(circle at 85% 15%,rgba(141,198,63,.32),transparent 34%),
    radial-gradient(circle at 70% 80%,rgba(82,125,36,.15),transparent 35%),
    linear-gradient(135deg,#080a09 0%,#121612 48%,#0c0f0c 100%)!important;
}
.tws-hero::before {
  content:""; position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:45px 45px; pointer-events:none;
}
.tws-hero>* { position:relative; z-index:2; }
.tws-hero h1 { text-shadow:0 5px 20px rgba(0,0,0,.45); }
.tws-hero .has-charcoal-background-color {
  background:linear-gradient(145deg,rgba(29,34,29,.97),rgba(16,19,16,.97))!important;
  border:1px solid rgba(141,198,63,.18);
  box-shadow:0 22px 50px rgba(0,0,0,.35);
}
#services {
  background:linear-gradient(180deg,#f8faf5 0%,#eef2e9 100%)!important;
}
#services>h2::after {
  content:""; display:block; width:85px; height:5px;
  margin:16px auto 0; background:var(--tws-green); border-radius:10px;
}
.tws-card {
  height:100%; position:relative; overflow:hidden;
  background:linear-gradient(160deg,#fff 0%,#f5f7f2 100%)!important;
  border:1px solid rgba(0,0,0,.05);
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  transition:transform .25s ease,box-shadow .25s ease;
}
.tws-card::before {
  content:""; position:absolute; top:0; left:0;
  width:100%; height:5px; background:var(--tws-green);
}
.tws-card:hover {
  transform:translateY(-8px);
  box-shadow:0 22px 45px rgba(0,0,0,.15);
}
#why-tws {
  background:
    radial-gradient(circle at 20% 20%,rgba(141,198,63,.13),transparent 28%),
    linear-gradient(145deg,#080a09,#141814)!important;
}
#why-tws .wp-block-column {
  padding:22px; border-left:3px solid var(--tws-green);
  background:rgba(255,255,255,.025);
}
#contact {
  position:relative; overflow:hidden;
  background:linear-gradient(135deg,#9bdd38,#7cb82e)!important;
}
#contact::after {
  content:"TWS"; position:absolute; right:-10px; bottom:-80px;
  font-size:260px; font-weight:900; line-height:1;
  color:rgba(0,0,0,.07); pointer-events:none;
}
#contact>* { position:relative; z-index:2; }

@media(max-width:900px){
  .tws-site-logo img{width:190px!important;}
  .tws-hero{padding-top:70px!important;padding-bottom:70px!important;}
}
@media(max-width:600px){
  .tws-site-logo img{width:150px!important;max-height:68px;}
  header nav{display:none;}
  header .wp-block-buttons,header .wp-block-button{width:auto;}
  header .wp-block-button__link{
    width:auto;padding:10px 14px!important;font-size:12px;
  }
  .tws-hero{padding-top:55px!important;padding-bottom:55px!important;}
  .tws-hero h1{font-size:48px!important;}
}

/* TWS V3 — IMAGE BACKGROUNDS + CTA VISUALS */
.tws-hero {
  background:
    linear-gradient(rgba(8,10,9,.78), rgba(8,10,9,.86)),
    url('/wp-content/themes/tws-development/assets/images/tws-branding-moodboard.png') center 28% / cover no-repeat !important;
}
#services {
  position: relative;
  background:
    linear-gradient(rgba(248,250,245,.94), rgba(238,242,233,.96)),
    url('/wp-content/themes/tws-development/assets/images/tws-branding-moodboard.png') center 70% / cover no-repeat !important;
}
#why-tws {
  background:
    linear-gradient(rgba(8,10,9,.92), rgba(20,24,20,.96)),
    url('/wp-content/themes/tws-development/assets/images/tws-branding-moodboard.png') center bottom / cover no-repeat !important;
}
#contact {
  background:
    linear-gradient(rgba(141,198,63,.92), rgba(124,184,46,.96)),
    url('/wp-content/themes/tws-development/assets/images/tws-branding-moodboard.png') center 12% / cover no-repeat !important;
}
@media (max-width: 700px) {
  .tws-hero, #services, #why-tws, #contact { background-position:center center !important; }
}
