
:root{--black:#0b0b0b;--charcoal:#1d1d1d;--ink:#161616;--gold:#b8944f;--gold-dark:#93753e;--white:#fff;--cream:#f7f3ed;--soft:#fbfaf7;--text:#2c2823;--muted:#6d665e;--border:#e8dfd2;--shadow:0 16px 42px rgba(0,0,0,.075)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);line-height:1.58;background:#fff;font-size:13.5px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.06;margin:0 0 14px;color:var(--ink);font-weight:500}h1{font-size:clamp(1.95rem,3.25vw,3.05rem);letter-spacing:-.032em}h2{font-size:clamp(1.35rem,2.15vw,2rem);letter-spacing:-.022em}h3{font-size:1rem;letter-spacing:-.008em}p{margin:0 0 14px}.container{width:min(1080px,92%);margin:0 auto}.narrow{width:min(780px,92%)}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.985);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:13px 6%}.brand{text-decoration:none;color:#111;letter-spacing:.08em;text-transform:uppercase;display:grid;line-height:1.05}.brand span{font-family:Georgia,'Times New Roman',serif;text-transform:uppercase;font-size:1.18rem;font-weight:500;letter-spacing:.2em}.brand small{font-size:.66rem;color:var(--gold);letter-spacing:.22em;font-weight:700}.site-nav{display:flex;align-items:center;gap:20px}.site-nav a{text-decoration:none;color:#282521;font-size:.72rem;font-weight:800;letter-spacing:.01em}.site-nav a:hover{color:var(--gold-dark)}.nav-cta{background:var(--gold);color:#fff!important;padding:9px 16px;border-radius:2px}.nav-toggle{display:none;background:none;border:0;font-size:1.5rem}.hero{min-height:570px;position:relative;display:flex;align-items:center;overflow:hidden;background:#111}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.38) 46%,rgba(0,0,0,.18)),url('../img/hero-aerial-home.jpg');background-size:cover;background-position:center;transform:scale(1.01)}.hero-content{position:relative;color:white;padding:70px 0;max-width:650px}.hero h1{color:white}.hero h1 span{font-size:.86em}.hero-text{font-size:.86rem;max-width:540px;color:rgba(255,255,255,.9);line-height:1.72}.eyebrow{text-transform:uppercase;letter-spacing:.24em;color:var(--gold);font-size:.56rem;font-weight:850;margin-bottom:11px}.button-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.btn{display:inline-block;text-decoration:none;border-radius:2px;padding:9px 15px;font-weight:800;border:1px solid transparent;cursor:pointer;font-size:.72rem;letter-spacing:.035em;transition:.2s ease}.btn-primary{background:var(--gold);color:white}.btn-primary:hover{background:var(--gold-dark)}.btn-outline{background:rgba(0,0,0,.1);color:white;border-color:rgba(255,255,255,.65)}.btn-outline.dark{color:#111;border-color:#cfc6b8;background:white}.trust-bar{background:linear-gradient(90deg,#161616,#24211d);color:white;padding:13px 0}.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;text-align:center;font-size:.64rem;font-weight:800;letter-spacing:.035em}.section{padding:58px 0}.section.compact{padding-top:56px}.section-heading{text-align:center;max-width:660px;margin:0 auto 30px}.section-heading p{color:var(--muted);font-size:.84rem;line-height:1.65}.cards{display:grid;gap:18px}.cards.four{grid-template-columns:repeat(4,1fr)}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.card,.price-card{background:white;border:1px solid var(--border);border-radius:2px;padding:22px;box-shadow:var(--shadow)}.card p,.price-card li,.price-card p{color:var(--muted);font-size:.78rem;line-height:1.58}.service-cards{display:grid;gap:22px}.service-cards.four{grid-template-columns:repeat(4,1fr)}.image-card-service{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}.image-card-service img{width:100%;height:178px;object-fit:cover;object-position:center 38%;display:block}.image-card-service div{padding:19px 20px 20px}.image-card-service p{font-size:.78rem;color:var(--muted);line-height:1.6}.image-card-service a{color:var(--gold-dark);text-decoration:none;font-weight:800;font-size:.66rem;text-transform:uppercase;letter-spacing:.14em}.dark{background:var(--black);color:white;padding:62px 0}.dark h2,.dark h3{color:white}.dark p,.dark li{color:rgba(255,255,255,.78)}.split-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:42px;align-items:center}.check-list{padding-left:17px}.dark-text li{color:var(--text)}.photo-panel img{width:100%;height:360px;object-fit:cover;object-position:center 40%;display:block;box-shadow:0 24px 70px rgba(0,0,0,.25)}.price{font-size:1.28rem;font-weight:850;color:var(--gold);font-family:Inter,Arial,sans-serif;margin:7px 0 11px;letter-spacing:-.03em}.price.small{font-size:1.02rem}.large ul{padding-left:18px}.center{text-align:center;margin-top:28px}.muted{background:var(--cream)}.soft{background:var(--soft)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:18px 0 30px}.gallery-item{min-height:205px;background:#ddd;position:relative;overflow:hidden;background-size:cover;background-position:center 38%;box-shadow:var(--shadow)}.gallery-item span{position:absolute;left:12px;bottom:12px;background:rgba(0,0,0,.68);color:white;padding:5px 10px;border-radius:999px;font-size:.72rem}.img1{background-image:url('../img/interior-living-room.jpg')}.img2{background-image:url('../img/exterior-front.jpg')}.img3{background-image:url('../img/aerial-property.jpg')}.img4{background-image:url('../img/land-lot-aerial.jpg')}.img5{background-image:url('../img/commercial-exterior.jpg')}.img6{background-image:url('../img/vacation-rental.jpg')}.img7{background-image:url('../img/interior-kitchen.jpg')}.img8{background-image:url('../img/interior-bedroom.jpg')}.img9{background-image:url('../img/interior-bathroom.jpg')}.img10{background-image:url('../img/boundary-outline.jpg')}.img11{background-image:url('../img/poi-labels.jpg')}.img12{background-image:url('../img/commercial-interior.jpg')}.img13{background-image:url('../img/virtual-staging.jpg')}.img14{background-image:url('../img/lawn-enhancement.jpg')}.img15{background-image:url('../img/drone-closeup.jpg')}.cta{background:linear-gradient(135deg,#111,#2c2417);color:white;text-align:center;padding:54px 0}.cta h2{color:white}.cta p{color:rgba(255,255,255,.78)}.page-hero{background:var(--cream);padding:54px 0 46px;border-bottom:1px solid var(--border)}.page-hero p{max-width:660px;color:var(--muted);font-size:.84rem;line-height:1.65}.service-grid{display:grid;gap:20px}.service-detail{display:grid;grid-template-columns:290px 1fr;gap:28px;align-items:center;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);padding:18px}.service-detail img{width:100%;height:205px;object-fit:cover;object-position:center 38%}.service-detail p,.service-detail li{color:var(--muted);font-size:.79rem;line-height:1.6}.pricing-page .price-card{min-height:245px}.price-card.featured{border-color:var(--gold);box-shadow:0 18px 56px rgba(185,148,79,.18)}.addons{margin-top:42px;text-align:center}.addons h2{margin-bottom:18px}.included{text-align:center;margin:26px auto 0;color:var(--muted);max-width:760px;font-size:.82rem}.quote-form{display:grid;gap:15px;background:white;border:1px solid var(--border);border-radius:2px;padding:28px;box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:grid;gap:7px;font-weight:750}input,select,textarea{width:100%;border:1px solid #d8d0c3;border-radius:2px;padding:10px;font:inherit}textarea{resize:vertical}.form-note{font-size:.78rem;color:var(--muted)}.site-footer{background:#111;color:#eee;padding:38px 0 18px}.site-footer h3{color:#fff}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer-links a{display:block;color:#eee;text-decoration:none;margin-bottom:7px}.site-footer p{color:#cfcfcf}.copyright{text-align:center;margin:26px 0 0;font-size:.78rem;color:#aaa}@media(max-width:900px){body{font-size:13.5px}.nav-toggle{display:block}.site-nav{display:none;position:absolute;top:64px;left:0;right:0;background:white;flex-direction:column;align-items:flex-start;padding:22px 6%;border-bottom:1px solid var(--border)}.site-nav.open{display:flex}.cards.four,.cards.three,.cards.two,.trust-grid,.split-grid,.gallery-grid,.form-row,.service-cards.four,.service-detail{grid-template-columns:1fr}.hero{min-height:520px}.hero-content{padding:58px 0}.footer-grid{flex-direction:column}.site-header{padding:14px 5%}.service-detail img,.photo-panel img{height:245px}}

/* V3.1 polish pass */
.image-card-service{transition:transform .22s ease, box-shadow .22s ease}
.image-card-service:hover{transform:translateY(-3px);box-shadow:0 22px 52px rgba(0,0,0,.09)}
.pricing-page{width:min(980px,100%);margin-left:auto;margin-right:auto}
.service-detail h2{font-size:clamp(1.28rem,2vw,1.72rem);margin-bottom:10px}
.price-card.large h2{font-size:clamp(1.25rem,1.75vw,1.62rem)}
.price-card.large{padding:25px}
.pricing-preview .price-card{min-height:auto}
@media(max-width:900px){.pricing-page{width:100%}.hero h1{font-size:clamp(2.05rem,9vw,3rem)}.cards.four,.service-cards.four{gap:16px}}


/* === V3.4 repair + polish ===
   Full-site patch: fixes gallery image loading by using <img> tags,
   removes embedded black bars from cropped assets, refines spacing/text size,
   and fixes skinny outline button issue.
*/

body {
  font-size: 13px;
  text-rendering: optimizeLegibility;
}

h1 { font-size: clamp(1.85rem, 3vw, 2.82rem); }
h2 { font-size: clamp(1.24rem, 1.9vw, 1.78rem); }
h3 { font-size: .98rem; }

.site-header {
  padding-top: 12px;
  padding-bottom: 12px;
}

.hero {
  min-height: 540px;
}

.hero-content {
  max-width: 610px;
  padding: 62px 0;
}

.hero h1 {
  letter-spacing: -.04em;
  line-height: 1.02;
}

.hero-text {
  max-width: 500px;
  font-size: .82rem;
  line-height: 1.68;
}

.trust-bar {
  padding: 12px 0;
}

.trust-grid {
  font-size: .60rem;
  gap: 16px;
}

.section {
  padding: 52px 0;
}

.page-hero {
  padding: 46px 0 42px;
}

.page-hero h1 {
  max-width: 680px;
}

.page-hero p {
  max-width: 610px;
  font-size: .80rem;
}

.service-grid {
  width: min(980px, 92%);
  margin: 0 auto;
  gap: 16px;
}

.service-detail {
  grid-template-columns: 360px 1fr;
  gap: 34px;
  padding: 12px;
  min-height: 184px;
  align-items: center;
  box-shadow: 0 10px 34px rgba(0,0,0,.045);
}

.service-detail img {
  height: 190px;
  width: 100%;
  object-fit: cover;
  object-position: center center;
  background: #f7f3ed;
}

.service-detail h2 {
  font-size: clamp(1.25rem, 1.8vw, 1.68rem);
  margin-bottom: 8px;
}

.service-detail p,
.service-detail li {
  font-size: .76rem;
  line-height: 1.55;
}

.service-detail ul {
  margin-top: 8px;
  margin-bottom: 0;
  padding-left: 18px;
}

.service-detail li::marker {
  color: var(--gold-dark);
}

.image-card-service img,
.card img,
.photo-panel img {
  background: #f7f3ed;
}

.image-card-service img {
  height: 165px;
  object-position: center center;
}

/* Gallery repaired: actual images, no background-image dependency */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 20px 0 28px;
}

.gallery-item {
  min-height: unset;
  height: 205px;
  background: #f7f3ed;
  position: relative;
  overflow: hidden;
  box-shadow: 0 12px 36px rgba(0,0,0,.055);
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  transition: transform .35s ease;
}

.gallery-item:hover img {
  transform: scale(1.035);
}

.gallery-item span {
  position: absolute;
  left: 12px;
  bottom: 12px;
  background: rgba(0,0,0,.68);
  color: #fff;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: .70rem;
  z-index: 2;
}

.btn {
  width: auto;
  min-width: 0;
  height: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  line-height: 1;
}

.center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.price-card {
  padding: 20px;
}

.pricing-page .price-card {
  min-height: 230px;
}

.price-card h2,
.price-card h3 {
  font-size: clamp(1.14rem, 1.7vw, 1.55rem);
}

.price-card p,
.price-card li {
  font-size: .74rem;
}

.addons {
  margin-top: 34px;
}

.included {
  font-size: .76rem;
}

.site-footer {
  padding-top: 34px;
}

@media (max-width: 900px) {
  .service-detail {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .service-detail img {
    height: 240px;
  }

  .trust-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  h1 { font-size: 2.05rem; }

  .hero {
    min-height: 500px;
  }

  .hero-content {
    padding: 52px 0;
  }

  .service-grid {
    width: min(94%, 980px);
  }

  .service-detail {
    padding: 10px;
  }

  .service-detail img {
    height: 210px;
  }

  .gallery-grid {
    grid-template-columns: 1fr;
  }

  .gallery-item {
    height: 225px;
  }
}

/* === V3.6 readable luxury typography - stronger visible bump === */
html { font-size: 16px; }

body {
  font-size: 15.25px !important;
  line-height: 1.68 !important;
}

.site-nav a {
  font-size: 0.84rem !important;
}

.brand span {
  font-size: 1.28rem !important;
}

.brand small {
  font-size: 0.72rem !important;
}

h1 {
  font-size: clamp(2.15rem, 3.35vw, 3.2rem) !important;
  line-height: 1.04 !important;
}

h2 {
  font-size: clamp(1.55rem, 2.18vw, 2.1rem) !important;
  line-height: 1.08 !important;
}

h3 {
  font-size: 1.15rem !important;
}

.hero-text,
.page-hero p,
.section-heading p,
.card p,
.price-card p,
.price-card li,
.service-detail p,
.service-detail li,
.image-card-service p,
.included,
.form-note,
.site-footer p,
.footer-links a {
  font-size: 0.95rem !important;
  line-height: 1.72 !important;
}

.eyebrow {
  font-size: 0.64rem !important;
}

.price {
  font-size: 1.42rem !important;
}

.price.small {
  font-size: 1.18rem !important;
}

.btn {
  font-size: 0.84rem !important;
  padding: 10px 17px !important;
}

.trust-grid {
  font-size: 0.68rem !important;
}

.gallery-item span {
  font-size: 0.78rem !important;
}

.service-detail {
  min-height: 205px !important;
  gap: 36px !important;
}

.service-detail img {
  height: 205px !important;
}


/* === V3.7 sitewide typography, navigation, footer, pricing, form polish === */

/* Force visible, sitewide font sizing update */
html { font-size: 17px !important; }

body {
  font-size: 16px !important;
  line-height: 1.72 !important;
}

p, li, input, select, textarea, label {
  font-size: 1rem !important;
  line-height: 1.72 !important;
}

.hero-text,
.page-hero p,
.section-heading p,
.card p,
.price-card p,
.price-card li,
.service-detail p,
.service-detail li,
.image-card-service p,
.included,
.form-note,
.form-setup-note,
.site-footer p,
.footer-column a,
.footer-bottom span {
  font-size: 1rem !important;
  line-height: 1.72 !important;
}

h1 {
  font-size: clamp(2.35rem, 3.65vw, 3.45rem) !important;
  line-height: 1.04 !important;
}

h2 {
  font-size: clamp(1.75rem, 2.45vw, 2.3rem) !important;
  line-height: 1.1 !important;
}

h3 {
  font-size: 1.24rem !important;
}

.eyebrow {
  font-size: .72rem !important;
  letter-spacing: .22em !important;
}

.site-nav a {
  position: relative;
  font-size: .9rem !important;
  padding: 8px 0;
}

.site-nav a.active:not(.nav-cta),
.site-nav a:hover {
  color: var(--gold-dark);
}

.site-nav a.active:not(.nav-cta)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 1px;
  height: 2px;
  background: var(--gold);
}

.nav-cta.active {
  background: var(--gold-dark);
  box-shadow: 0 8px 22px rgba(147,117,62,.22);
}

.price {
  font-size: 1.55rem !important;
  line-height: 1.15 !important;
}

.price.small {
  font-size: 1.55rem !important;
}

.price-card {
  border-color: var(--border) !important;
  box-shadow: var(--shadow) !important;
}

.price-card.featured {
  border-color: var(--border) !important;
  box-shadow: var(--shadow) !important;
}

.btn {
  font-size: .9rem !important;
  padding: 11px 18px !important;
}

/* Services readability */
.service-grid {
  width: min(1040px, 92%);
}

.service-detail {
  grid-template-columns: 370px 1fr;
  padding: 14px;
}

.service-detail img {
  height: 220px !important;
}

.service-detail ul {
  margin-top: 10px;
}

/* Request form */
.quote-form {
  gap: 18px;
}

.form-setup-note {
  grid-column: 1 / -1;
  color: var(--muted);
  background: var(--cream);
  border: 1px solid var(--border);
  padding: 12px 14px;
  margin: 4px 0 0;
}

.form-setup-note code {
  font-size: .9em;
  background: #fff;
  padding: 2px 5px;
  border: 1px solid var(--border);
}

/* Footer redesign */
.site-footer {
  background: #111;
  color: #eee;
  padding: 44px 0 0 !important;
}

.footer-layout {
  display: grid;
  grid-template-columns: 1.7fr .7fr .8fr;
  gap: 44px;
  align-items: start;
  padding-bottom: 34px;
}

.footer-brand-block h3 {
  color: #fff;
  margin-bottom: 8px;
}

.footer-tagline {
  color: var(--gold) !important;
  font-family: Georgia, 'Times New Roman', serif;
}

.footer-column h4 {
  color: #fff;
  margin: 0 0 12px;
  font-size: .86rem;
  text-transform: uppercase;
  letter-spacing: .16em;
}

.footer-column a {
  display: block;
  color: #ddd;
  text-decoration: none;
  margin-bottom: 8px;
}

.footer-column a:hover {
  color: var(--gold);
}

.social-links {
  display: flex;
  gap: 10px;
  margin: 12px 0;
}

.social-links a {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  margin: 0;
}

.social-links a:hover {
  background: var(--gold);
  border-color: var(--gold);
  color: #111;
}

.footer-note {
  font-size: .82rem !important;
  color: rgba(255,255,255,.55) !important;
}

.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.12);
  padding: 16px 0;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  color: rgba(255,255,255,.68);
}

@media (max-width: 900px) {
  .footer-layout {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .footer-bottom {
    flex-direction: column;
  }

  .service-detail {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  html { font-size: 16px !important; }
  h1 { font-size: 2.25rem !important; }
  h2 { font-size: 1.7rem !important; }
}


/* === V3.8 luxury trust badges === */

.trust-badges {
  width: min(1080px, 92%);
  margin: 0 auto 22px;
  padding: 18px 0 24px;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.trust-badge {
  color: rgba(255,255,255,.82);
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  padding: 12px 14px;
  text-align: center;
  font-size: .84rem;
  letter-spacing: .03em;
  backdrop-filter: blur(6px);
}

.trust-badge:hover {
  border-color: rgba(184,148,79,.45);
  color: #fff;
}

@media (max-width: 900px) {
  .trust-badges {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .trust-badges {
    grid-template-columns: 1fr;
  }
}


/* === V3.9 premium visual trust icons === */

.trust-icons-row {
  width: min(1080px, 92%);
  margin: 0 auto 28px;
  padding: 26px 0 10px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.trust-icon-card {
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  padding: 24px 18px;
  text-align: center;
  transition: all .25s ease;
}

.trust-icon-card:hover {
  transform: translateY(-3px);
  border-color: rgba(184,148,79,.45);
  background: rgba(255,255,255,.05);
}

.trust-icon {
  width: 62px;
  height: 62px;
  margin: 0 auto 16px;
  border-radius: 50%;
  border: 1px solid rgba(184,148,79,.42);
  background: rgba(184,148,79,.08);
  color: #d4b06a;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
}

.trust-icon-card h4 {
  color: #fff;
  margin: 0 0 8px;
  font-size: .95rem;
  letter-spacing: .04em;
}

.trust-icon-card p {
  color: rgba(255,255,255,.68) !important;
  font-size: .84rem !important;
  line-height: 1.5 !important;
  margin: 0;
}

@media (max-width: 900px) {
  .trust-icons-row {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .trust-icons-row {
    grid-template-columns: 1fr;
  }
}


/* === V4.0 request quote cleanup === */

.form-live-note {
  margin-top: 6px;
  text-align: center;
  color: var(--muted);
  font-size: .92rem !important;
  font-style: italic;
}


/* === V4.1 compact premium trust icons === */

/* Hide old large visual footer cards if they remain in cached markup */
.trust-icons-row,
.trust-badges {
  display: none !important;
}

/* Premium trust strip below hero */
.premium-trust-section {
  background: #fff;
  border-bottom: 1px solid var(--border);
  padding: 18px 0;
}

.premium-trust-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.premium-trust-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 16px;
  background: #fbfaf7;
  border: 1px solid var(--border);
  box-shadow: 0 10px 28px rgba(0,0,0,.035);
}

.trust-svg {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  stroke: var(--gold);
  fill: none;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.premium-trust-item strong {
  display: block;
  color: var(--ink);
  font-size: .88rem;
  letter-spacing: .03em;
  line-height: 1.2;
}

.premium-trust-item span {
  display: block;
  color: var(--muted);
  font-size: .78rem;
  line-height: 1.35;
  margin-top: 2px;
}

/* Compact footer trust row */
.footer-trust-compact {
  width: min(1080px, 92%);
  margin: 0 auto 20px;
  padding: 16px 0 18px;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.footer-trust-compact div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  color: rgba(255,255,255,.82);
  font-size: .82rem;
  letter-spacing: .025em;
}

.footer-trust-compact .trust-svg {
  width: 25px;
  height: 25px;
  flex-basis: 25px;
  stroke: #d4b06a;
  opacity: .95;
}

.footer-trust-compact span {
  white-space: nowrap;
}

@media (max-width: 900px) {
  .premium-trust-row,
  .footer-trust-compact {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .premium-trust-section {
    padding: 14px 0;
  }

  .premium-trust-row,
  .footer-trust-compact {
    grid-template-columns: 1fr;
  }

  .premium-trust-item {
    padding: 13px 14px;
  }

  .footer-trust-compact div {
    justify-content: flex-start;
    padding-left: 10px;
  }
}


/* === V4.4 Homepage hero polish === */
/* Makes hero-aerial-home.jpg feel brighter, more premium, and better composed */

.hero {
  min-height: 640px !important;
  align-items: center !important;
  background: #111 !important;
}

.hero:before {
  background:
    linear-gradient(90deg,
      rgba(0,0,0,.74) 0%,
      rgba(0,0,0,.58) 27%,
      rgba(0,0,0,.30) 52%,
      rgba(0,0,0,.08) 100%
    ),
    linear-gradient(0deg,
      rgba(0,0,0,.28) 0%,
      rgba(0,0,0,0) 35%
    ),
    url('../img/hero-aerial-home.jpg?v=64') !important;
  background-size: cover !important;
  background-position: center 48% !important;
  transform: scale(1.015) !important;
  filter: saturate(1.08) contrast(1.05) brightness(1.06) !important;
}

.hero-content {
  max-width: 575px !important;
  padding: 92px 0 88px !important;
}

.hero .eyebrow {
  color: #d4b06a !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.55);
}

.hero h1 {
  max-width: 570px !important;
  text-shadow: 0 3px 24px rgba(0,0,0,.45);
}

.hero-text {
  max-width: 520px !important;
  color: rgba(255,255,255,.94) !important;
  text-shadow: 0 2px 16px rgba(0,0,0,.42);
}

.hero .btn {
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}

.premium-trust-section {
  background: linear-gradient(180deg, #ffffff 0%, #fbfaf7 100%) !important;
}

@media (max-width: 900px) {
  .hero {
    min-height: 570px !important;
  }

  .hero:before {
    background-position: center center !important;
  }
}

@media (max-width: 640px) {
  .hero {
    min-height: 560px !important;
  }

  .hero-content {
    padding: 70px 0 !important;
  }

  .hero:before {
    background:
      linear-gradient(90deg,
        rgba(0,0,0,.78) 0%,
        rgba(0,0,0,.58) 58%,
        rgba(0,0,0,.30) 100%
      ),
      url('../img/hero-aerial-home.jpg?v=64') !important;
    background-size: cover !important;
    background-position: center center !important;
  }
}


/* === V4.5 hero "pop" revision === */
/* Stronger visual change: brighter photo, less muddy overlay, refined text panel */

.hero {
  min-height: 680px !important;
  overflow: hidden !important;
}

.hero:before {
  background:
    radial-gradient(circle at 72% 46%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 34%),
    linear-gradient(90deg,
      rgba(0,0,0,.82) 0%,
      rgba(0,0,0,.62) 28%,
      rgba(0,0,0,.22) 56%,
      rgba(0,0,0,.04) 100%
    ),
    linear-gradient(0deg,
      rgba(0,0,0,.16) 0%,
      rgba(0,0,0,0) 42%
    ),
    url('../img/hero-aerial-home-pop.jpg?v=64') !important;
  background-size: cover !important;
  background-position: center 42% !important;
  transform: scale(1.0) !important;
  filter: none !important;
}

.hero-content {
  max-width: 590px !important;
  padding: 96px 0 96px !important;
  position: relative;
}

.hero-content:before {
  content: "";
  position: absolute;
  inset: 54px -34px 50px -34px;
  background: linear-gradient(135deg, rgba(0,0,0,.32), rgba(0,0,0,.08));
  border-left: 2px solid rgba(212,176,106,.55);
  box-shadow: 0 24px 80px rgba(0,0,0,.18);
  z-index: -1;
}

.hero h1 {
  font-size: clamp(2.45rem, 4vw, 4.05rem) !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
  text-shadow: 0 5px 30px rgba(0,0,0,.68) !important;
}

.hero-text {
  font-size: 1.03rem !important;
  line-height: 1.7 !important;
  max-width: 530px !important;
}

.hero .button-row {
  margin-top: 26px !important;
}

.hero .btn-primary {
  background: #caa45a !important;
}

.hero .btn-outline {
  border-color: rgba(255,255,255,.82) !important;
  background: rgba(255,255,255,.08) !important;
}

@media (max-width: 900px) {
  .hero {
    min-height: 620px !important;
  }

  .hero:before {
    background-position: center center !important;
  }

  .hero-content:before {
    inset: 42px -22px 42px -22px;
  }
}

@media (max-width: 640px) {
  .hero h1 {
    font-size: 2.45rem !important;
  }

  .hero-content:before {
    inset: 34px -16px 34px -16px;
  }
}


/* === V5.0 premium visual direction: inspired by high-end real-estate hero === */

/* Overall polish */
:root {
  --gold: #caa45a;
  --gold-dark: #a9833f;
  --deep: #0b0d0d;
  --deep-2: #151310;
}

body {
  background: #fff;
}

/* Header: cleaner, more premium */
.site-header {
  padding: 18px 6% !important;
  border-bottom: 1px solid rgba(0,0,0,.06) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.035);
}

.brand span {
  font-size: 1.28rem !important;
  letter-spacing: .23em !important;
}

.brand small {
  font-size: .72rem !important;
  letter-spacing: .26em !important;
}

.site-nav {
  gap: 26px !important;
}

.site-nav a {
  font-size: .82rem !important;
  letter-spacing: .045em !important;
  text-transform: uppercase;
  position: relative;
  padding: 8px 0;
}

.site-nav a.active:not(.nav-cta)::after,
.site-nav a:hover:not(.nav-cta)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2px;
  height: 2px;
  background: var(--gold);
}

.nav-cta {
  border-radius: 0 !important;
  padding: 12px 20px !important;
  letter-spacing: .08em !important;
}

/* Cinematic hero */
.hero {
  min-height: 740px !important;
  background: var(--deep) !important;
  overflow: hidden;
}

.hero:before {
  background:
    linear-gradient(90deg,
      rgba(3,5,6,.86) 0%,
      rgba(3,5,6,.72) 28%,
      rgba(3,5,6,.25) 58%,
      rgba(3,5,6,.02) 100%),
    linear-gradient(0deg,
      rgba(3,5,6,.34) 0%,
      rgba(3,5,6,0) 44%),
    url('../img/hero-aerial-home-v50.jpg?v=64') !important;
  background-size: cover !important;
  background-position: center 43% !important;
  transform: none !important;
  filter: none !important;
}

.hero-content {
  max-width: 620px !important;
  padding: 112px 0 108px !important;
}

.hero-content:before {
  content: "";
  position: absolute;
  inset: 66px -42px 62px -42px;
  background: rgba(0,0,0,.30);
  border-left: 2px solid rgba(202,164,90,.75);
  backdrop-filter: blur(2px);
  z-index: -1;
}

.hero .eyebrow {
  color: var(--gold) !important;
  font-size: .78rem !important;
  letter-spacing: .26em !important;
}

.hero h1 {
  font-size: clamp(2.75rem, 4.55vw, 5.05rem) !important;
  line-height: .96 !important;
  letter-spacing: -.05em !important;
  text-shadow: 0 8px 40px rgba(0,0,0,.72) !important;
}

.hero-text {
  font-size: 1.08rem !important;
  max-width: 560px !important;
  color: rgba(255,255,255,.93) !important;
}

.hero .button-row {
  margin-top: 30px !important;
}

.hero .btn {
  border-radius: 0 !important;
  padding: 13px 22px !important;
  letter-spacing: .08em !important;
}

.hero .btn-primary {
  background: var(--gold) !important;
  color: #fff !important;
}

.hero .btn-outline {
  background: rgba(0,0,0,.18) !important;
  border-color: rgba(255,255,255,.76) !important;
}

/* Trust icons under hero: make them feel like premium service tiles */
.premium-trust-section {
  background: linear-gradient(90deg, #0b0d0d, #1a1712) !important;
  border: 0 !important;
  padding: 0 !important;
}

.premium-trust-row {
  grid-template-columns: repeat(4, 1fr);
  gap: 0 !important;
}

.premium-trust-item {
  background: rgba(255,255,255,.035) !important;
  border: 0 !important;
  border-left: 1px solid rgba(202,164,90,.25) !important;
  box-shadow: none !important;
  padding: 24px 24px !important;
}

.premium-trust-item:first-child {
  border-left: 0 !important;
}

.premium-trust-item strong {
  color: #fff !important;
  font-size: .92rem !important;
  text-transform: uppercase;
  letter-spacing: .075em;
}

.premium-trust-item span {
  color: rgba(255,255,255,.72) !important;
  font-size: .82rem !important;
}

.premium-trust-item .trust-svg {
  width: 42px !important;
  height: 42px !important;
  stroke: var(--gold) !important;
}

/* Homepage service cards: stronger visual presence, same layout */
.image-card-service {
  border: 0 !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.10) !important;
}

.image-card-service img {
  height: 205px !important;
  filter: contrast(1.04) saturate(1.05);
}

.image-card-service div {
  padding: 22px 22px 24px !important;
}

.section-heading h2 {
  letter-spacing: -.035em !important;
}

.dark {
  background: linear-gradient(135deg, #0b0d0d, #19150f) !important;
}

/* Gallery refinement */
.gallery-item {
  height: 230px !important;
  box-shadow: 0 20px 45px rgba(0,0,0,.10) !important;
}

.gallery-item img {
  filter: contrast(1.05) saturate(1.06);
}

/* Interior pages get a more premium hero feel */
.page-hero {
  background: linear-gradient(135deg, #f8f4ed 0%, #fff 100%) !important;
  padding: 68px 0 60px !important;
}

/* Footer compact premium */
.site-footer {
  background: linear-gradient(135deg, #0b0d0d, #17130f) !important;
}

/* Mobile adjustments */
@media (max-width: 900px) {
  .hero {
    min-height: 660px !important;
  }

  .hero h1 {
    font-size: clamp(2.45rem, 8vw, 4rem) !important;
  }

  .premium-trust-row {
    grid-template-columns: repeat(2, 1fr);
  }

  .premium-trust-item:nth-child(3) {
    border-left: 0 !important;
  }
}

@media (max-width: 640px) {
  .site-header {
    padding: 14px 5% !important;
  }

  .hero {
    min-height: 620px !important;
  }

  .hero-content {
    padding: 82px 0 !important;
  }

  .hero-content:before {
    inset: 46px -18px 46px -18px;
  }

  .hero h1 {
    font-size: 2.65rem !important;
  }

  .premium-trust-row {
    grid-template-columns: 1fr;
  }

  .premium-trust-item,
  .premium-trust-item:nth-child(3) {
    border-left: 0 !important;
    border-top: 1px solid rgba(202,164,90,.18) !important;
  }

  .premium-trust-item:first-child {
    border-top: 0 !important;
  }
}


/* === V5.1 refined hero sizing === */
/* Pulls the hero back so it feels premium instead of oversized */

.hero {
  min-height: 610px !important;
}

.hero-content {
  max-width: 560px !important;
  padding: 84px 0 78px !important;
}

.hero-content:before {
  inset: 52px -30px 48px -30px !important;
}

.hero h1 {
  font-size: clamp(2.45rem, 4vw, 4.2rem) !important;
  line-height: 1.0 !important;
}

.hero-text {
  font-size: 1rem !important;
  max-width: 500px !important;
}

.hero .button-row {
  margin-top: 24px !important;
}

.hero .btn {
  padding: 12px 20px !important;
}

@media (max-width: 900px) {
  .hero {
    min-height: 560px !important;
  }

  .hero-content {
    padding: 72px 0 !important;
  }
}

@media (max-width: 640px) {
  .hero {
    min-height: 520px !important;
  }

  .hero-content {
    padding: 64px 0 !important;
  }

  .hero h1 {
    font-size: 2.5rem !important;
  }

  .hero-content:before {
    inset: 40px -14px 38px -14px !important;
  }
}


/* === V5.3 Footer social cleanup === */

.social-icons {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 12px;
}

.social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border: 1px solid rgba(255,255,255,.18);
    color: rgba(255,255,255,.82);
    text-decoration: none;
    font-size: .82rem;
    letter-spacing: .03em;
    transition: all .2s ease;
    background: rgba(255,255,255,.03);
}

.social-icon:hover {
    border-color: rgba(202,164,90,.75);
    color: #fff;
    background: rgba(202,164,90,.12);
}


/* === V5.4 footer social icon refinement === */

.social-links{
 display:flex;
 gap:10px;
 align-items:center;
 flex-wrap:wrap;
 margin-top:10px;
}

.social-links a{
 width:38px;
 height:38px;
 border-radius:50%;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 border:1px solid rgba(255,255,255,.16);
 background:rgba(255,255,255,.03);
 color:#fff;
 text-decoration:none;
 font-size:.92rem;
 transition:all .2s ease;
}

.social-links a:hover{
 border-color:rgba(202,164,90,.75);
 background:rgba(202,164,90,.14);
 transform:translateY(-2px);
}


/* === V5.5 Real SVG Social Icons === */

.social-links a svg{
 width:18px;
 height:18px;
 display:block;
}


/* === V5.6 polish: featured visuals button, drone icon, services pricing buttons, premium pricing page === */

.section.container .center .btn.btn-primary[href="services.html"] {
  background: var(--gold) !important;
  color: #fff !important;
  border-color: var(--gold) !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.10);
}

.drone-svg path,
.drone-svg circle {
  stroke-width: 2.2;
}

.footer-bottom {
  justify-content: center !important;
  text-align: center;
}

.footer-trust-compact {
  grid-template-columns: 1.35fr repeat(3, 1fr) !important;
}

.footer-trust-compact div {
  font-size: .76rem !important;
}

.footer-trust-compact .drone-svg {
  width: 28px !important;
  height: 28px !important;
}

/* Service page pricing buttons */
.service-pricing-link {
  margin-top: 14px;
  color: var(--ink) !important;
  border-color: var(--border) !important;
  background: #fff !important;
}

.service-pricing-link:hover {
  border-color: var(--gold) !important;
  color: var(--gold-dark) !important;
}

/* Premium pricing page */
.pricing-hero {
  background:
    linear-gradient(135deg, rgba(248,244,237,.96), rgba(255,255,255,.98)),
    radial-gradient(circle at 80% 20%, rgba(202,164,90,.14), transparent 36%) !important;
}

.pricing-section {
  background: linear-gradient(180deg, #fff 0%, #fbfaf7 100%);
}

.pricing-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  align-items: stretch;
}

.premium-price-card {
  position: relative;
  background: #fff;
  border: 1px solid var(--border);
  box-shadow: 0 18px 46px rgba(0,0,0,.065);
  padding: 28px 24px;
  min-height: 345px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.premium-price-card:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--gold), rgba(202,164,90,.22));
}

.premium-price-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 62px rgba(0,0,0,.09);
  transition: .22s ease;
}

.price-topline {
  font-size: .66rem;
  text-transform: uppercase;
  letter-spacing: .18em;
  color: var(--gold-dark);
  font-weight: 800;
  margin-bottom: 14px;
}

.premium-price-card h2 {
  font-size: clamp(1.45rem, 2vw, 2rem) !important;
  margin-bottom: 10px;
}

.premium-price-card .price {
  font-size: clamp(1.65rem, 2.3vw, 2.35rem) !important;
  color: var(--gold-dark);
  margin: 4px 0 18px;
}

.premium-price-card p {
  color: var(--muted);
  margin-bottom: 18px;
}

.premium-price-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.premium-price-card li {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 9px 0;
  border-bottom: 1px solid rgba(232,223,210,.75);
  color: var(--muted);
}

.premium-price-card li strong {
  color: var(--ink);
  font-weight: 700;
}

.premium-price-card li span {
  white-space: nowrap;
  color: var(--gold-dark);
  font-weight: 800;
}

.premium-price-card .btn {
  margin-top: auto;
  align-self: flex-start;
}

.enhancement-panel {
  margin-top: 34px;
  background: #111;
  color: #fff;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 24px;
  align-items: center;
  padding: 34px;
  box-shadow: 0 22px 58px rgba(0,0,0,.11);
}

.enhancement-panel h2,
.enhancement-panel h3 {
  color: #fff;
}

.enhancement-panel .eyebrow {
  color: var(--gold) !important;
}

.enhancement-items {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 16px;
}

.enhancement-items article {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  padding: 22px;
}

.enhancement-items .price {
  color: #d8b86f;
}

.premium-included {
  background: #fff;
  border: 1px solid var(--border);
  padding: 18px 22px;
  box-shadow: 0 12px 34px rgba(0,0,0,.045);
}

@media (max-width: 1050px) {
  .pricing-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .enhancement-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .pricing-grid,
  .enhancement-items {
    grid-template-columns: 1fr;
  }

  .premium-price-card {
    min-height: auto;
  }

  .footer-trust-compact {
    grid-template-columns: 1fr !important;
  }
}


/* === V5.7 pricing refinement === */

/* Slightly reduce pricing text size */
.premium-price-card .price {
  font-size: clamp(1.45rem, 2vw, 2.05rem) !important;
}

/* Residential quote row */
.quote-row {
  align-items: center;
}

.mini-quote-btn {
  padding: 8px 14px !important;
  font-size: .74rem !important;
  letter-spacing: .08em;
  white-space: nowrap;
}

/* Enhancement boxes centered */
.enhancement-items article {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-height: 140px;
}

.enhancement-items article h3 {
  margin-bottom: 10px;
}

/* Remove bottom footer divider sitewide */
.footer-bottom {
  border-top: 0 !important;
  margin-top: 0 !important;
  padding-top: 22px !important;
}

/* Remove trust divider spacing too */
.footer-trust-compact {
  border-bottom: 0 !important;
  margin-bottom: 0 !important;
}


/* === V5.8 About page premium refinement === */

.about-premium-hero {
  background:
    linear-gradient(135deg, rgba(248,244,237,.96), rgba(255,255,255,.98)),
    radial-gradient(circle at 80% 20%, rgba(202,164,90,.16), transparent 38%) !important;
}

.about-story-section {
  padding-top: 70px;
}

.about-story-grid {
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 48px;
  align-items: center;
}

.about-story-copy h2 {
  font-size: clamp(2rem, 3vw, 3.2rem);
  line-height: 1.05;
  letter-spacing: -.04em;
  margin-bottom: 22px;
}

.about-story-copy p {
  color: var(--muted);
  line-height: 1.8;
}

.about-story-image img {
  width: 100%;
  height: 620px;
  object-fit: cover;
  box-shadow: 0 28px 70px rgba(0,0,0,.12);
}

.about-feature-list {
  display: grid;
  gap: 18px;
  margin: 34px 0;
}

.about-feature-list div {
  padding: 18px 20px;
  border-left: 2px solid var(--gold);
  background: linear-gradient(90deg, rgba(202,164,90,.08), rgba(255,255,255,0));
}

.about-feature-list strong {
  display: block;
  margin-bottom: 6px;
  color: var(--ink);
}

.about-feature-list span {
  color: var(--muted);
}

.about-services-summary {
  background: linear-gradient(180deg, #fbfaf7 0%, #fff 100%);
}

.about-service-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 18px;
  margin-top: 40px;
}

.about-service-grid article {
  background: #fff;
  border: 1px solid var(--border);
  padding: 28px 24px;
  box-shadow: 0 18px 44px rgba(0,0,0,.05);
}

.about-service-grid h3 {
  margin-bottom: 14px;
  font-size: 1.18rem;
}

.about-service-grid p {
  color: var(--muted);
}

.about-trust-section {
  background: linear-gradient(135deg, #111, #1b1711);
  color: #fff;
  padding: 72px 0;
}

.about-trust-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 22px;
}

.about-trust-grid div {
  padding: 30px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.04);
}

.about-trust-grid h3 {
  color: #fff;
  margin-bottom: 14px;
}

.about-trust-grid p {
  color: rgba(255,255,255,.78);
}

@media (max-width: 980px) {

  .about-story-grid,
  .about-service-grid,
  .about-trust-grid {
    grid-template-columns: 1fr;
  }

  .about-story-image img {
    height: 420px;
  }
}


/* === V5.9 About page cleanup === */

.about-service-grid article {
  display: flex;
  flex-direction: column;
}

.about-pricing-btn {
  margin-top: auto;
  align-self: flex-start;
  background: #fff !important;
  border-color: var(--border) !important;
  color: var(--ink) !important;
}

.about-pricing-btn:hover {
  border-color: var(--gold) !important;
  color: var(--gold-dark) !important;
}


/* === V6.0 refined homepage hero === */
/* Smaller, cleaner hero with sharper photo treatment and better headline rhythm */

.hero {
  min-height: 545px !important;
}

.hero:before {
  background:
    linear-gradient(90deg,
      rgba(3,5,6,.80) 0%,
      rgba(3,5,6,.62) 31%,
      rgba(3,5,6,.24) 58%,
      rgba(3,5,6,.04) 100%),
    linear-gradient(0deg,
      rgba(3,5,6,.20) 0%,
      rgba(3,5,6,0) 42%),
    url('../img/hero-aerial-home-v50.jpg?v=64') !important;
  background-size: cover !important;
  background-position: center 45% !important;
  transform: none !important;
  filter: contrast(1.03) saturate(1.04) brightness(1.02) !important;
}

.hero-content {
  max-width: 640px !important;
  padding: 70px 0 68px !important;
}

.hero-content:before {
  inset: 42px -26px 40px -26px !important;
  background: rgba(0,0,0,.24) !important;
  border-left: 2px solid rgba(202,164,90,.70) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.18) !important;
}

.hero h1 {
  font-size: clamp(2.45rem, 3.65vw, 4rem) !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
  max-width: 630px !important;
  margin-bottom: 18px !important;
}

.hero h1 span {
  font-size: .82em !important;
  letter-spacing: -.035em !important;
}

.hero-text {
  max-width: 540px !important;
  font-size: .98rem !important;
  line-height: 1.62 !important;
  margin-bottom: 0 !important;
}

.hero .button-row {
  margin-top: 22px !important;
}

.hero .btn {
  padding: 11px 18px !important;
  font-size: .82rem !important;
}

@media (max-width: 900px) {
  .hero {
    min-height: 520px !important;
  }

  .hero-content {
    padding: 62px 0 !important;
  }

  .hero h1 {
    font-size: clamp(2.25rem, 7vw, 3.4rem) !important;
  }
}

@media (max-width: 640px) {
  .hero {
    min-height: 500px !important;
  }

  .hero-content {
    padding: 56px 0 !important;
  }

  .hero-content:before {
    inset: 34px -14px 34px -14px !important;
  }

  .hero h1 {
    font-size: 2.35rem !important;
  }
}


/* === V6.1 services/nav/drone cleanup === */
.site-nav {
  gap: 24px !important;
}

.drone-svg {
  stroke-width: 2.3 !important;
}

.drone-svg path,
.drone-svg circle {
  vector-effect: non-scaling-stroke;
}

.included-note {
  display: inline-block;
  margin-top: 14px !important;
  padding: 9px 14px;
  background: rgba(202,164,90,.10);
  border: 1px solid rgba(202,164,90,.32);
  color: var(--gold-dark) !important;
  font-weight: 800;
  font-size: .82rem !important;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.service-detail li strong {
  color: var(--ink);
}


/* === V6.2 Services text cleanup + desktop/Safari image refinement === */

/* Desktop Safari was showing several images too aggressively cropped/stretched.
   These rules keep the current layout, but improve image clarity and composition on larger screens. */

@media (min-width: 901px) {
  .image-card-service img {
    height: 235px !important;
    object-fit: cover !important;
    object-position: center center !important;
    image-rendering: auto !important;
    backface-visibility: hidden;
    transform: translateZ(0);
  }

  .service-detail img {
    height: 255px !important;
    object-fit: cover !important;
    object-position: center center !important;
    image-rendering: auto !important;
    backface-visibility: hidden;
    transform: translateZ(0);
  }

  .gallery-item {
    height: 260px !important;
  }

  .gallery-item img {
    object-fit: cover !important;
    object-position: center center !important;
    image-rendering: auto !important;
    backface-visibility: hidden;
    transform: translateZ(0);
  }

  .photo-panel img,
  .about-story-image img {
    object-fit: cover !important;
    object-position: center center !important;
    image-rendering: auto !important;
  }

  .cards.four,
  .service-cards.four {
    gap: 22px !important;
  }
}

/* Keep images crisp without over-darkening them */
.image-card-service img,
.service-detail img,
.gallery-item img {
  filter: contrast(1.02) saturate(1.03) !important;
}

/* Services card copy after removing pricing details */
.service-detail li strong {
  font-weight: 800;
}


/* === V6.3 Book a Shoot page === */

.book-hero {
  background:
    linear-gradient(135deg, rgba(248,244,237,.96), rgba(255,255,255,.98)),
    radial-gradient(circle at 80% 20%, rgba(202,164,90,.16), transparent 38%) !important;
}

.booking-section {
  background: linear-gradient(180deg, #fff 0%, #fbfaf7 100%);
}

.booking-grid {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 34px;
  align-items: start;
}

.booking-contact-card {
  background: #111;
  color: #fff;
  padding: 36px;
  box-shadow: 0 22px 58px rgba(0,0,0,.12);
}

.booking-contact-card h2 {
  color: #fff;
  font-size: clamp(1.7rem, 2.5vw, 2.5rem);
}

.booking-contact-card p {
  color: rgba(255,255,255,.75);
}

.contact-methods {
  display: grid;
  gap: 16px;
  margin: 28px 0;
}

.contact-methods div {
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  padding: 18px;
}

.contact-methods span {
  display: block;
  color: var(--gold);
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .7rem;
  font-weight: 800;
  margin-bottom: 6px;
}

.contact-methods a {
  color: #fff;
  text-decoration: none;
  font-size: 1.08rem;
  font-weight: 800;
}

.contact-methods small {
  display: block;
  color: rgba(255,255,255,.55);
  margin-top: 7px;
  font-size: .78rem;
}

.booking-note {
  border-left: 2px solid var(--gold);
  padding-left: 14px;
  color: rgba(255,255,255,.78);
}

.booking-form {
  width: 100%;
}

.nav-cta.active {
  background: var(--gold-dark) !important;
}

@media (max-width: 900px) {
  .booking-grid {
    grid-template-columns: 1fr;
  }
}


/* === V6.7 CTA scrub === */
.included-note {
  display: inline-block;
  margin-top: 14px !important;
  padding: 9px 14px;
  background: rgba(202,164,90,.10);
  border: 1px solid rgba(202,164,90,.32);
  color: var(--gold-dark) !important;
  font-weight: 800;
  font-size: .82rem !important;
  letter-spacing: .06em;
  text-transform: uppercase;
}


/* === V6.8 hero text refinement === */

.hero-italic {
  font-style: italic;
  font-weight: 500 !important;
  letter-spacing: -.03em !important;
}


/* V70 */
.services-pricing-hero{
background:linear-gradient(135deg,#f8f4ed,#fff);
}
.combined-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:28px;
}
.combined-card{
background:#fff;
border:1px solid var(--border);
overflow:hidden;
box-shadow:0 24px 60px rgba(0,0,0,.06);
transition:.25s ease;
}
.combined-card:hover{
transform:translateY(-4px);
box-shadow:0 34px 80px rgba(0,0,0,.1);
}
.combined-card img{
width:100%;
height:290px;
object-fit:cover;
}
.combined-card-content{
padding:32px;
}
.combined-card h2{
font-size:2rem;
line-height:1.02;
margin-bottom:14px;
}
.combined-card ul{
margin:22px 0;
padding-left:18px;
}
.combined-card li{
margin-bottom:10px;
}
.price-stack{
display:grid;
gap:10px;
margin:24px 0;
}
.price-stack div,.enhancement-grid div{
display:flex;
justify-content:space-between;
padding:14px 16px;
background:#faf8f4;
border:1px solid #ece6db;
}
.single-price{
font-size:2rem;
font-weight:800;
margin:24px 0;
}
.combined-actions{
display:flex;
gap:12px;
flex-wrap:wrap;
margin-top:28px;
}
.enhancement-card{
grid-column:1/-1;
}
.enhancement-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:14px;
margin:24px 0;
}
@media(max-width:980px){
.combined-grid{grid-template-columns:1fr}
.enhancement-grid{grid-template-columns:1fr}
}


/* === V7.1 Services & Pricing navigation + drone + CTA polish === */

.site-nav {
  gap: 18px !important;
}

.site-nav a {
  white-space: nowrap;
}

.drone-svg {
  stroke-width: 2.15 !important;
}

.drone-svg path,
.drone-svg circle {
  vector-effect: non-scaling-stroke;
}

.combined-card .btn-primary[href="request-quote.html"] {
  background: var(--gold) !important;
  border-color: var(--gold) !important;
  color: #fff !important;
}

.combined-card .btn-primary[href="request-quote.html"]:hover {
  background: var(--gold-dark) !important;
  border-color: var(--gold-dark) !important;
}

.combined-card ul {
  color: var(--muted);
}

.combined-card li {
  line-height: 1.55;
}

.combined-card-content > p:not(.eyebrow) {
  color: var(--muted);
  line-height: 1.7;
}

.combined-card {
  position: relative;
}

.combined-card:before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, var(--gold), rgba(202,164,90,.18));
  z-index: 2;
}

.single-price,
.price-stack span,
.enhancement-grid span {
  color: var(--gold-dark);
}

@media (max-width: 1100px) {
  .site-nav {
    gap: 13px !important;
  }
  .site-nav a {
    font-size: .75rem !important;
  }
}

@media (max-width: 900px) {
  .site-nav {
    gap: 12px !important;
  }
}


/* === V7.2 Combined Services & Pricing rollout === */

.drone-svg {
  stroke-width: 1.7 !important;
}

.drone-svg path,
.drone-svg circle {
  vector-effect: non-scaling-stroke;
}

.site-nav {
  gap: 24px !important;
}

.combined-card .btn-primary[href="request-quote.html"],
.btn-primary[href="request-quote.html"] {
  background: var(--gold) !important;
  border-color: var(--gold) !important;
  color: #fff !important;
}

.combined-card .btn-primary[href="request-quote.html"]:hover,
.btn-primary[href="request-quote.html"]:hover {
  background: var(--gold-dark) !important;
  border-color: var(--gold-dark) !important;
}


/* === V7.3 Form consistency === */

.contact-card-title {
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  letter-spacing: .04em;
  text-transform: uppercase;
  margin-bottom: 18px !important;
  line-height: 1.4;
}


/* V7.4 surgical refinements */

.drone-svg{
stroke-width:1.25 !important;
width:42px;
height:42px;
}

.enhancement-photo-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:22px;
margin-top:26px;
}

.enhancement-photo-card{
border:1px solid rgba(0,0,0,.08);
background:#fff;
overflow:hidden;
}

.enhancement-photo-card img{
width:100%;
height:240px;
object-fit:cover;
display:block;
}

.enhancement-photo-content{
padding:22px;
}

.enhancement-photo-content h3{
margin-bottom:10px;
font-size:1.3rem;
}

.enhancement-photo-content p{
margin-bottom:14px;
color:var(--muted);
line-height:1.6;
}

@media(max-width:900px){
.enhancement-photo-grid{
grid-template-columns:1fr;
}
}


/* === V7.5 hero + drone + enhancements fix === */
.hero {
  min-height: 500px !important;
}

.hero:before {
  background:
    linear-gradient(90deg,
      rgba(8,12,14,.72) 0%,
      rgba(8,12,14,.50) 28%,
      rgba(8,12,14,.18) 58%,
      rgba(8,12,14,.02) 100%),
    linear-gradient(0deg,
      rgba(8,12,14,.20) 0%,
      rgba(8,12,14,.06) 38%,
      rgba(8,12,14,.18) 100%),
    url('../img/hero-aerial-home-v50.jpg?v=75') center center / cover no-repeat !important;
}

.drone-svg {
  width: 40px !important;
  height: 40px !important;
  stroke-width: 1.8 !important;
  color: currentColor !important;
}

.enhancement-card > img {
  display: none !important;
}

.enhancement-card .combined-card-content {
  width: 100% !important;
}

.enhancement-photo-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
  margin-top: 24px !important;
}

.enhancement-photo-card {
  border: 1px solid rgba(17,17,17,.08) !important;
  background: #fff !important;
  overflow: hidden !important;
  border-radius: 2px !important;
  box-shadow: 0 12px 32px rgba(0,0,0,.04) !important;
}

.enhancement-photo-card img {
  width: 100% !important;
  height: 260px !important;
  object-fit: cover !important;
  display: block !important;
}

.enhancement-photo-content {
  padding: 22px !important;
  text-align: left !important;
}

.enhancement-photo-content h3 {
  margin-bottom: 10px !important;
  font-size: 1.35rem !important;
}

.enhancement-photo-content p {
  margin-bottom: 12px !important;
  line-height: 1.6 !important;
}

.enhancement-photo-content strong {
  display: inline-block !important;
  font-size: 1rem !important;
}

@media (max-width: 900px) {
  .enhancement-photo-grid {
    grid-template-columns: 1fr !important;
  }
}


/* === V7.6 actual fixes rebuilt === */

.hero:before {
  background:
    linear-gradient(90deg,
      rgba(8,12,14,.72) 0%,
      rgba(8,12,14,.50) 30%,
      rgba(8,12,14,.20) 60%,
      rgba(8,12,14,.04) 100%),
    url('../img/hero-aerial-home.jpg?v=76') center center / cover no-repeat !important;
  filter: none !important;
}

.drone-svg {
  width: 34px !important;
  height: 34px !important;
  stroke-width: 2.4 !important;
  fill: none !important;
}

.footer-trust-compact .drone-svg {
  width: 25px !important;
  height: 25px !important;
}

.form-eyebrow {
  margin-bottom: 8px !important;
}

.enhancement-card > img,
.enhancement-grid {
  display: none !important;
}

.enhancement-photo-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
  margin-top: 24px !important;
}

.enhancement-photo-card {
  border: 1px solid rgba(17,17,17,.08) !important;
  background: #fff !important;
  overflow: hidden !important;
  box-shadow: 0 12px 32px rgba(0,0,0,.04) !important;
}

.enhancement-photo-card img {
  width: 100% !important;
  height: 260px !important;
  object-fit: cover !important;
  display: block !important;
}

.enhancement-photo-content {
  padding: 22px !important;
  text-align: left !important;
}

.enhancement-photo-content h3 {
  margin-bottom: 10px !important;
  font-size: 1.35rem !important;
}

.enhancement-photo-content p {
  margin-bottom: 12px !important;
  line-height: 1.6 !important;
}

.enhancement-photo-content strong {
  display: inline-block !important;
  color: var(--gold-dark);
  font-size: 1rem !important;
}

@media (max-width: 900px) {
  .enhancement-photo-grid {
    grid-template-columns: 1fr !important;
  }
}


/* === V7.7 premium hero photography refinement === */

.hero {
  min-height: 560px !important;
}

.hero:before {
  background:
    linear-gradient(90deg,
      rgba(10,12,14,.72) 0%,
      rgba(10,12,14,.46) 28%,
      rgba(10,12,14,.16) 60%,
      rgba(10,12,14,.02) 100%),
    linear-gradient(0deg,
      rgba(10,12,14,.10) 0%,
      rgba(10,12,14,.04) 40%,
      rgba(10,12,14,.12) 100%),
    url('../img/hero-aerial-home.jpg?v=77') center center / cover no-repeat !important;

  image-rendering: auto;
  filter: none !important;
}

.hero-content {
  max-width: 640px !important;
}

.hero h1 {
  text-shadow: 0 3px 18px rgba(0,0,0,.28);
}

.hero p {
  text-shadow: 0 2px 14px rgba(0,0,0,.22);
}


/* === V7.7 rebuilt footer consistency === */
.site-footer {
  margin-top: 0 !important;
}

.footer-layout {
  align-items: start !important;
}

.footer-column a {
  display: block;
}


/* === V7.8 footer icon alignment + FAA drone icon cleanup === */

/* Make the FAA drone icon the same visual weight as the other trust icons */
.drone-svg {
  stroke-width: 2.15 !important;
  fill: none !important;
}

.footer-trust-compact .drone-svg {
  width: 22px !important;
  height: 22px !important;
  flex: 0 0 22px !important;
}

/* Fix social icons being visually off-center inside circular buttons */
.social-links {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.social-links a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  line-height: 1 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.social-links a svg {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  position: static !important;
  transform: none !important;
}

/* Slight optical adjustment for text-based social fallbacks, if any remain */
.social-links a:not(:has(svg)) {
  font-size: 18px !important;
  font-weight: 800 !important;
  text-align: center !important;
}


/* === V7.9 social icons single-row footer fix === */

.social-links {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  align-items: center !important;
}

.footer-column .social-links {
  min-width: 300px !important;
}

.footer-column .social-links a {
  flex: 0 0 auto !important;
}


/* === V8.2 matching contact/form pages === */

.booking-section {
  background: linear-gradient(180deg, #fff 0%, #fbfaf7 100%);
}

.booking-grid {
  display: grid !important;
  grid-template-columns: .9fr 1.1fr !important;
  gap: 34px !important;
  align-items: stretch !important;
}

.booking-contact-card,
.booking-form {
  min-height: 100% !important;
}

.booking-form .form-eyebrow {
  margin-bottom: 18px !important;
}

.contact-methods a {
  word-break: break-word;
}

.form-live-note {
  color: var(--muted);
  font-size: .82rem;
  margin-top: -2px;
}

@media (max-width: 900px) {
  .booking-grid {
    grid-template-columns: 1fr !important;
  }
}


/* === V8.4 mobile navigation fix === */

.nav-toggle {
  cursor: pointer;
  color: var(--ink);
  line-height: 1;
  z-index: 1002;
}

@media (max-width: 900px) {
  .site-header {
    position: sticky !important;
    top: 0;
    z-index: 1000;
  }

  .nav-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    margin-left: auto;
  }

  .site-nav {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    background: #fff !important;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    box-shadow: 0 18px 40px rgba(0,0,0,.08);
    padding: 18px 6% 20px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
  }

  .site-nav.open {
    display: flex !important;
  }

  .site-nav a {
    display: block !important;
    width: 100%;
    padding: 13px 0 !important;
    font-size: .86rem !important;
    border-bottom: 1px solid rgba(0,0,0,.06);
  }

  .site-nav a.active {
    border-bottom: 1px solid rgba(0,0,0,.06) !important;
    color: var(--gold-dark) !important;
  }

  .site-nav .nav-cta {
    width: 100%;
    text-align: center;
    margin-top: 12px;
    padding: 13px 16px !important;
    border-bottom: 0 !important;
  }
}


/* === V8.5 mobile Book a Shoot nav text visibility fix === */

@media (max-width: 900px) {
  .site-nav .nav-cta,
  .site-nav .nav-cta:visited,
  .site-nav .nav-cta.active {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
  }

  .site-nav .nav-cta:hover {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
  }
}


/* === V8.6 SEO foundation content sections === */

.seo-support-section,
.seo-faq-section {
  background: #fbfaf7;
}

.seo-support-section p,
.seo-faq-section p {
  color: var(--muted);
  line-height: 1.75;
}

.faq-list {
  display: grid;
  gap: 18px;
  margin-top: 26px;
}

.faq-list article {
  background: #fff;
  border: 1px solid var(--border);
  padding: 22px;
  box-shadow: 0 14px 34px rgba(0,0,0,.04);
}

.faq-list h3 {
  margin-bottom: 8px;
}


/* === V8.7 contact page === */

.contact-section {
  background: linear-gradient(180deg, #fff 0%, #fbfaf7 100%);
}

.contact-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 34px;
  align-items: stretch;
}

.contact-welcome-card,
.contact-form {
  min-height: 100%;
}

.contact-reassurance {
  background: #fbfaf7;
  text-align: center;
}

.contact-reassurance p {
  color: var(--muted);
  line-height: 1.75;
}

@media (max-width: 900px) {
  .contact-grid {
    grid-template-columns: 1fr;
  }
}


/* === V8.8 drone emphasis updates === */

.hero-subtitle {
  margin-top: 14px;
  font-size: 1rem;
  color: rgba(255,255,255,.92);
  letter-spacing: .03em;
}

.aerial-drone-showcase,
.drone-emphasis-banner,
.faa-highlight-card {
  background: #fbfaf7;
}

.showcase-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 42px;
  align-items: center;
}

.showcase-image img {
  width: 100%;
  display: block;
  box-shadow: 0 28px 60px rgba(0,0,0,.14);
}

.showcase-list {
  margin: 24px 0 28px;
  padding-left: 18px;
}

.showcase-list li {
  margin-bottom: 10px;
  color: var(--muted);
}

.premium-note-card {
  background: #fff;
  border: 1px solid var(--border);
  padding: 42px;
  box-shadow: 0 20px 46px rgba(0,0,0,.05);
}

.premium-note-card p {
  line-height: 1.75;
  color: var(--muted);
}

@media (max-width: 900px) {
  .showcase-grid {
    grid-template-columns: 1fr;
  }

  .showcase-image {
    order: -1;
  }

  .premium-note-card {
    padding: 28px;
  }
}


/* === V8.9 homepage simplification + stronger hero === */

.hero h1 {
  max-width: 720px !important;
  font-size: clamp(2.7rem, 5vw, 5.4rem) !important;
  line-height: .96 !important;
  letter-spacing: -.055em !important;
}

.hero-subtitle {
  margin-top: 16px !important;
  font-size: clamp(.88rem, 1.2vw, 1.05rem) !important;
  letter-spacing: .08em !important;
  color: rgba(255,255,255,.94) !important;
}

.hero-text {
  max-width: 560px !important;
  margin-top: 16px !important;
}

.aerial-drone-showcase {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

.showcase-copy h2 {
  font-size: clamp(2rem, 3vw, 3.1rem);
  line-height: 1.02;
}

.showcase-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 22px;
  padding-left: 18px;
}

.seo-support-section {
  display: none !important;
}

@media (max-width: 900px) {
  .hero h1 {
    font-size: clamp(2.35rem, 10vw, 3.45rem) !important;
  }

  .showcase-list {
    grid-template-columns: 1fr;
  }
}


/* === V9.0 homepage hierarchy refinement === */

.hero h1 {
  max-width: 760px !important;
  font-size: clamp(3rem, 6vw, 6rem) !important;
  line-height: .92 !important;
  letter-spacing: -.06em !important;
}

.hero-text {
  max-width: 600px !important;
  font-size: 1.04rem !important;
  line-height: 1.7 !important;
}

.aerial-drone-showcase {
  border-top: 1px solid rgba(0,0,0,.05);
}

.signature-services {
  padding-top: 62px !important;
}

.featured-visuals {
  padding-top: 68px !important;
}

.cta {
  padding-top: 72px !important;
}


/* === V9.1 actual homepage reorder/simplification === */

/* Homepage now intentionally uses:
   1. Hero
   2. Aerial Perspective
   3. Signature Services
   4. Featured Visuals
   5. Final CTA
*/

.hero h1 {
  max-width: 760px !important;
  font-size: clamp(3rem, 6vw, 6rem) !important;
  line-height: .92 !important;
  letter-spacing: -.06em !important;
}

.hero-text {
  max-width: 600px !important;
  font-size: 1.04rem !important;
  line-height: 1.7 !important;
}

.dark {
  padding-top: 74px !important;
  padding-bottom: 74px !important;
}

.section.container.compact {
  padding-top: 66px !important;
}

.section.container {
  padding-top: 68px !important;
}

.cta {
  padding-top: 76px !important;
  padding-bottom: 76px !important;
}


/* === V9.2 alternating homepage section rhythm === */

.premium-trust-section {
  background: #111827;
  border-top: 1px solid rgba(255,255,255,.06);
  border-bottom: 1px solid rgba(255,255,255,.06);
  padding: 18px 0;
}

.trust-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
  align-items: center;
  text-align: center;
}

.trust-item {
  color: rgba(255,255,255,.82);
  font-size: .82rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.section-dark-alt {
  background: linear-gradient(180deg,#161d29 0%, #101722 100%) !important;
}

.section-light-alt {
  background: #ffffff !important;
}

.section-warm-alt {
  background: #f8f6f1 !important;
}

.section-dark-final {
  background: linear-gradient(180deg,#151c27 0%, #0f1620 100%) !important;
}

.section-warm-alt .gallery-item,
.section-light-alt .service-card {
  box-shadow: 0 18px 42px rgba(0,0,0,.05);
}

@media (max-width: 900px) {
  .trust-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .trust-item {
    font-size: .76rem;
  }
}


/* === V9.3 homepage palette rhythm refinement === */

.hero {
  position: relative;
  background-size: cover !important;
  background-position: center center !important;
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(7,10,15,.55) 0%,
    rgba(7,10,15,.42) 45%,
    rgba(7,10,15,.62) 100%
  );
}

.hero .container {
  position: relative;
  z-index: 2;
}

.premium-trust-section {
  background: #141b25;
  border-top: 1px solid rgba(255,255,255,.06);
  border-bottom: 1px solid rgba(255,255,255,.06);
  padding: 18px 0;
}

.trust-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
}

.trust-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: rgba(255,255,255,.86);
  font-size: .78rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.trust-icon {
  width: 18px;
  height: 18px;
  stroke-width: 1.8;
  flex: 0 0 18px;
}

.section-light-aerial {
  background: #f7f5ef !important;
  color: #111827;
}

.section-dark-services {
  background: linear-gradient(180deg,#18202c 0%, #101722 100%) !important;
  color: #ffffff;
}

.section-dark-services h2,
.section-dark-services h3,
.section-dark-services .eyebrow {
  color: #ffffff !important;
}

.section-dark-services p,
.section-dark-services li {
  color: rgba(255,255,255,.76) !important;
}

.section-dark-services .service-card {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: none;
}

.section-light-featured {
  background: #ffffff !important;
}

.section-dark-final {
  background: linear-gradient(180deg,#151c27 0%, #0f1620 100%) !important;
}

@media (max-width: 900px) {
  .trust-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .trust-item {
    justify-content: flex-start;
    padding-left: 10px;
  }
}


/* === V9.4 full-width section color + trust bar correction === */

/* Top trust strip: match footer trust row behavior, centered and compact */
.top-trust-section {
  background: #141b25 !important;
  padding: 0 !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
}

.top-trust-compact {
  width: min(1080px, 92%) !important;
  margin: 0 auto !important;
  padding: 14px 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 10px !important;
}

.top-trust-compact div {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  min-height: 42px !important;
  color: rgba(255,255,255,.84) !important;
  font-size: .78rem !important;
  letter-spacing: .025em !important;
  text-align: center !important;
  text-transform: none !important;
}

.top-trust-compact .trust-svg {
  width: 23px !important;
  height: 23px !important;
  flex: 0 0 23px !important;
  stroke: #d4b06a !important;
  opacity: .96 !important;
}

/* Full-width section colors */
.section-light-aerial {
  background: #f7f5ef !important;
  color: var(--ink) !important;
}

.section-dark-services {
  background: linear-gradient(180deg,#18202c 0%, #101722 100%) !important;
  color: #fff !important;
}

.section-light-featured {
  background: #ffffff !important;
  color: var(--ink) !important;
}

.section-dark-final {
  background: linear-gradient(180deg,#151c27 0%, #0f1620 100%) !important;
  color: #fff !important;
}

/* Fix text contrast after darkening Signature Services */
.section-dark-services .section-heading h2,
.section-dark-services .section-heading .eyebrow {
  color: #fff !important;
}

.section-dark-services .section-heading p {
  color: rgba(255,255,255,.76) !important;
}

/* Cards stay readable: dark section, but white cards with dark text */
.section-dark-services .image-card-service {
  background: #fff !important;
  border-color: rgba(255,255,255,.10) !important;
}

.section-dark-services .image-card-service h3 {
  color: var(--ink) !important;
}

.section-dark-services .image-card-service p {
  color: var(--muted) !important;
}

.section-dark-services .image-card-service a {
  color: var(--gold-dark) !important;
}

/* Featured visuals stays light with readable text */
.section-light-featured h2,
.section-light-featured h3 {
  color: var(--ink) !important;
}

.section-light-featured p {
  color: var(--muted) !important;
}

@media (max-width: 900px) {
  .top-trust-compact {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px 10px !important;
  }

  .top-trust-compact div {
    justify-content: flex-start !important;
    text-align: left !important;
    font-size: .74rem !important;
  }
}

@media (max-width: 520px) {
  .top-trust-compact {
    grid-template-columns: 1fr !important;
  }
}


/* === V9.5 hero typography refinement === */

.hero h1 {
  max-width: 820px !important;
  font-size: clamp(2.6rem, 5vw, 5rem) !important;
  line-height: .95 !important;
  letter-spacing: -.05em !important;
}

.hero-subtitle {
  margin-top: 16px !important;
  font-size: clamp(.86rem, 1vw, 1rem) !important;
  letter-spacing: .08em !important;
  color: rgba(255,255,255,.94) !important;
}

.hero-text {
  max-width: 640px !important;
  margin-top: 18px !important;
  font-size: 1rem !important;
  line-height: 1.72 !important;
  color: rgba(255,255,255,.88) !important;
}


/* === V9.6 smaller hero headline refinement === */

.hero h1 {
  max-width: 760px !important;
  font-size: clamp(2.15rem, 4.2vw, 4.15rem) !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
}

@media (max-width: 900px) {
  .hero h1 {
    font-size: clamp(2rem, 8vw, 3rem) !important;
    line-height: 1.02 !important;
  }
}


/* === V9.7 hero headline reduction === */

.hero h1 {
  max-width: 700px !important;
  font-size: clamp(1.9rem, 3.7vw, 3.5rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.04em !important;
}

@media (max-width: 900px) {
  .hero h1 {
    font-size: clamp(1.85rem, 7vw, 2.7rem) !important;
    line-height: 1.06 !important;
  }
}
