/*
Theme Name: Skylinedrone Divi Child
Theme URI: https://skylinedrone.co.uk
Description: Skylinedrone Time-shift child theme for Divi 5. v3.4.17 directly commits verified SEO support copy into the core native Divi 5 pages while preserving editability, the approved Home hero, Wat Tyler proof section, graphics and navigation.
Author: Skylinedrone Ltd
Template: Divi
Version: 3.4.17
Text Domain: skylinedrone-divi
*/

/* Complete site design stylesheet — embedded here so WordPress and Divi always load it. */
@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/poppins-400.woff2') format('woff2')}
@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/poppins-600.woff2') format('woff2')}
:root {
  --ink: #0d1215;
  --ink-soft: #172126;
  --paper: #f3f1ea;
  --white: #ffffff;
  --muted: #aeb9bd;
  --line: rgba(255, 255, 255, 0.13);
  --teal: #79c2bb;
  --teal-dark: #2f7774;
  --orange: #d97a4a;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ink);
  color: var(--white);
  font-family: "Poppins", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
  text-rendering: optimizeLegibility;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
p { margin: 0; }
h1, h2, h3 {
  margin: 0;
  font-family: "Poppins", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  letter-spacing: -0.01em;
}
strong, b { font-weight: 600; }
main { overflow: hidden; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.site-header {
  height: 88px;
  padding: 0 clamp(24px, 5vw, 82px);
  display: grid;
  grid-template-columns: minmax(190px, 1fr) auto minmax(190px, 1fr);
  align-items: center;
  gap: 32px;
  background: rgba(13, 18, 21, 0.96);
  border-bottom: 1px solid var(--line);
  position: relative;
  z-index: 10;
}
.brand img { width: 194px; height: auto; }
.site-header .desktop-nav { display: flex; align-items: center; gap: clamp(22px, 2.6vw, 44px); height: 100%; }
.site-header .desktop-nav a { height: 100%; display: inline-flex; align-items: center; position: relative; font-size: 13px; font-weight: 600; letter-spacing: .015em; color: #e8eeee; transition: color .2s ease; white-space: nowrap; }
.site-header .desktop-nav a:after { content: ""; position: absolute; left: 50%; bottom: 20px; width: 0; height: 2px; background: var(--teal); transform: translateX(-50%); transition: width .22s ease; }
.site-header .desktop-nav a:hover, .site-header .desktop-nav a:focus-visible, .site-header .desktop-nav a.is-active { color: var(--teal); }
.site-header .desktop-nav a:hover:after, .site-header .desktop-nav a:focus-visible:after { width: 12px; }
.site-header .desktop-nav a.is-active:after { width: 24px; }
.header-cta {
  justify-self: end;
  font-size: 13px;
  font-weight: 600;
  padding: 12px 18px;
  border: 1px solid rgba(121, 194, 187, .7);
  border-radius: 999px;
  color: var(--teal);
}
.header-cta:hover, .header-cta:focus-visible, .header-cta.is-active { background: var(--teal); color: var(--ink); }
.mobile-nav { display: none; justify-self: end; }
.menu-toggle {
  appearance: none;
  border: 1px solid rgba(121, 194, 187, .55);
  background: transparent;
  color: var(--white);
  min-width: 96px;
  height: 42px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-radius: 999px;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.menu-toggle i { width: 18px; height: 12px; position: relative; display: block; }
.menu-toggle i b { position: absolute; left: 0; width: 100%; height: 1px; background: var(--teal); transition: transform .25s ease, top .25s ease; }
.menu-toggle i b:first-child { top: 2px; }.menu-toggle i b:last-child { top: 9px; }
.menu-toggle[aria-expanded="true"] i b:first-child { top: 6px; transform: rotate(45deg); }
.menu-toggle[aria-expanded="true"] i b:last-child { top: 6px; transform: rotate(-45deg); }
.mobile-menu {
  position: fixed;
  inset: 88px 0 0;
  z-index: 20;
  background: rgba(9, 14, 17, .98);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-14px);
  transition: opacity .25s ease, transform .25s ease, visibility .25s;
  overflow-y: auto;
}
.mobile-menu.is-open { opacity: 1; visibility: visible; transform: translateY(0); }
.mobile-menu-inner { width: min(100%, 760px); margin-left: auto; padding: 48px clamp(24px, 7vw, 72px) 54px; }
.mobile-menu-label { display: block; color: var(--teal); font-size: 10px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; margin-bottom: 24px; }
.mobile-menu nav { display: flex; flex-direction: column; border-top: 1px solid var(--line); }
.mobile-menu nav a { display: grid; grid-template-columns: 32px 1fr auto; align-items: center; gap: 16px; min-height: 92px; border-bottom: 1px solid var(--line); }
.mobile-menu nav a:hover strong, .mobile-menu nav a:focus-visible strong, .mobile-menu nav a.is-active strong { color: var(--teal); }
.mobile-menu-number { color: var(--teal); font-size: 10px; font-weight: 600; }
.mobile-menu nav strong { display: block; font-size: clamp(25px, 5vw, 34px); line-height: 1.08; letter-spacing: -.01em; transition: color .2s ease; }
.mobile-menu nav small { display: block; color: #849195; font-size: 12px; margin-top: 7px; }
.mobile-menu nav a > b { color: var(--teal); font-size: 19px; }
.mobile-contact { margin-top: 28px; min-height: 54px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; background: var(--teal); color: var(--ink); text-transform: uppercase; font-size: 11px; font-weight: 600; letter-spacing: .1em; }
.mobile-menu-contact { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px 24px; margin-top: 28px; color: #a9b4b7; font-size: 12px; }
body.menu-open { overflow: hidden; }

/* Six primary links require the compact header slightly earlier than the
   previous five-link navigation. This changes only the header presentation;
   page-layout breakpoints remain untouched. */
@media (max-width: 1200px) {
  .site-header { grid-template-columns:1fr auto; }
  .site-header > .desktop-nav,
  .site-header > .header-cta { display:none; }
  .site-header > .mobile-nav { display:block; }
}

.hero {
  min-height: calc(100vh - 88px);
  display: grid;
  grid-template-columns: minmax(440px, .83fr) minmax(520px, 1.17fr);
  background: var(--ink);
}
.hero-copy {
  padding: clamp(80px, 10vw, 150px) clamp(38px, 6vw, 104px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.hero-copy:after {
  content: "";
  width: 120px;
  height: 120px;
  border: 1px solid rgba(121,194,187,.12);
  border-radius: 50%;
  position: absolute;
  left: -54px;
  bottom: 54px;
}
.eyebrow {
  color: var(--teal);
  text-transform: uppercase;
  letter-spacing: .2em;
  font-size: 11px;
  font-weight: 600;
}
.hero h1 {
  font-size: clamp(56px, 5.3vw, 88px);
  line-height: .98;
  font-weight: 600;
  letter-spacing: -.015em;
  max-width: 720px;
  margin: 22px 0 34px;
}
.hero-lead { max-width: 640px; color: #c4cccf; font-size: clamp(18px, 1.45vw, 23px); line-height: 1.55; }
.button-row { display: flex; gap: 12px; margin-top: 42px; flex-wrap: wrap; }
.button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border-radius: 3px;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: 11px;
  font-weight: 600;
  transition: transform .2s ease, background .2s ease, color .2s ease;
}
.button:hover, .button:focus-visible { transform: translateY(-2px); }
.button-primary { background: var(--teal); color: var(--ink); }
.button-primary:hover { background: #9bd4cf; }
.button-ghost { border: 1px solid rgba(255,255,255,.3); }
.button-ghost:hover { border-color: var(--white); }
.credibility-row { margin-top: 58px; padding-top: 20px; border-top: 1px solid var(--line); display: flex; gap: 28px; color: #9ca8ac; font-size: 11px; line-height: 1.5; }
.credibility-row span { position: relative; padding-left: 14px; }
.credibility-row span:before { content: ""; width: 5px; height: 5px; background: var(--teal); border-radius: 50%; position: absolute; left: 0; top: 6px; }

.hero-visual { position: relative; min-height: 700px; overflow: hidden; }
.hero-visual:after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--ink) 0%, transparent 25%), linear-gradient(0deg, rgba(13,18,21,.64) 0%, transparent 45%); pointer-events: none; }
.hero-visual > img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.76) contrast(1.08); }
.viewfinder { position: absolute; z-index: 2; width: 52%; aspect-ratio: 1.65; border: 1px solid rgba(255,255,255,.55); top: 24%; left: 24%; }
.viewfinder:before, .viewfinder:after { content:""; position:absolute; background:rgba(255,255,255,.28); }
.viewfinder:before { width: 1px; height: 100%; left:50%; }
.viewfinder:after { height: 1px; width:100%; top:50%; }
.viewfinder i { position:absolute; width:20px; height:20px; border-color:var(--teal); border-style:solid; }
.viewfinder i:nth-child(1){left:-2px;top:-2px;border-width:3px 0 0 3px}.viewfinder i:nth-child(2){right:-2px;top:-2px;border-width:3px 3px 0 0}.viewfinder i:nth-child(3){left:-2px;bottom:-2px;border-width:0 0 3px 3px}.viewfinder i:nth-child(4){right:-2px;bottom:-2px;border-width:0 3px 3px 0}
.hero-note { position: absolute; z-index: 3; left: 6%; bottom: 11%; display: flex; flex-direction: column; text-transform: uppercase; font-size: clamp(17px, 1.5vw, 24px); line-height: 1.18; letter-spacing: .04em; }
.hero-note strong { color: var(--teal); }
.stage-chip { position: absolute; z-index: 3; right: 5%; top: 5%; background: rgba(13,18,21,.82); backdrop-filter: blur(10px); padding: 13px 18px; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; border: 1px solid var(--line); }
.stage-chip span { color: var(--teal); font-weight: 600; }.stage-chip b { color: #718086; padding: 0 8px; }

.signal-bar { display:grid; grid-template-columns:repeat(4,1fr); background:#11191d; border-block:1px solid var(--line); padding:0 clamp(24px,5vw,82px); }
.signal-bar div { min-height:105px; display:flex; align-items:center; gap:18px; padding:0 28px; border-right:1px solid var(--line); }
.signal-bar div:first-child{border-left:1px solid var(--line)}.signal-bar b{font-size:11px;color:var(--teal)}.signal-bar span{font-size:13px;color:#c3cccf}
.section-pad { padding: clamp(88px, 9vw, 150px) clamp(24px, 7vw, 118px); }
.intro-section { background: var(--paper); color: var(--ink); display:grid; grid-template-columns: .9fr 1.1fr; gap: clamp(50px,8vw,140px); }
.intro-section h2, .section-heading h2, .process-heading h2, .audience-copy h2, .inner-hero h1 { font-size:clamp(44px,4.5vw,72px); line-height:1.04; }
.intro-copy { max-width:680px; }
.intro-copy .large-copy { font-size:clamp(25px,2.2vw,35px); line-height:1.3; font-weight:600; margin-bottom:28px; letter-spacing:-.01em; }
.intro-copy > p:not(.large-copy) { color:#49555a; font-size:17px; line-height:1.7; margin-bottom:32px; }
.text-link { display:inline-flex; gap:10px; align-items:center; color:var(--teal-dark); font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:.1em; border-bottom:1px solid currentColor; padding-bottom:5px; }

.projects-section { background:#121a1e; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:55px; }
.section-heading h2 { margin-top:16px; }
.projects-section .text-link { color:var(--teal); }
.project-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.project-card { border:1px solid var(--line); background:#172126; overflow:hidden; }
.project-image { display:block; aspect-ratio:16/9; overflow:hidden; position:relative; }
.project-image:after { content:""; position:absolute; inset:0; background:rgba(7,12,15,.1); transition:background .3s ease; }
.project-image img { width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
.project-card:hover .project-image img { transform:scale(1.04); }.project-card:hover .project-image:after{background:rgba(7,12,15,.32)}
.play { position:absolute; z-index:2; left:22px; bottom:20px; width:44px; height:44px; display:grid; place-items:center; border-radius:50%; background:var(--teal); color:var(--ink); font-size:12px; padding-left:2px; }
.project-card > div { padding:30px 28px 34px; }
.project-card h3 { font-size:28px; line-height:1.05; margin:14px 0 16px; }
.project-card p { color:#aab5b9; line-height:1.6; font-size:14px; min-height:68px; margin-bottom:24px; }
.project-card .text-link { color:var(--teal); }

.process-section { background:var(--paper); color:var(--ink); }
.process-heading { max-width:800px; margin-bottom:65px; }
.process-heading h2 { margin:16px 0 24px; }.process-heading > p{color:#536065;font-size:18px}
.process-grid { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #cad0ce; }
.process-grid li { padding:28px 28px 0 0; border-right:1px solid #cad0ce; min-height:230px; position:relative; }
.process-grid li:not(:first-child){padding-left:28px}.process-grid li:last-child{border-right:0}.process-grid li > span{font-size:11px;font-weight:600;color:var(--teal-dark)}
.process-grid h3 { font-size:29px; margin:50px 0 14px; }.process-grid p{color:#5c686c;line-height:1.6;font-size:14px;max-width:230px}
.process-grid li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal-dark);position:absolute;top:-4px;left:0}.process-grid li:not(:first-child):before{left:28px}

.audience-section { display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(50px,8vw,130px);background:#0f1518;align-items:center; }
.audience-visual{position:relative;}.audience-visual img{aspect-ratio:1.18;object-fit:cover;filter:saturate(.72)}
.image-caption{position:absolute;left:-18px;bottom:28px;background:var(--teal);color:var(--ink);padding:18px 28px;display:flex;flex-direction:column;text-transform:uppercase}.image-caption span{font-size:9px;letter-spacing:.18em}.image-caption strong{font-size:18px;margin-top:4px}
.audience-copy h2 { margin:18px 0 40px; }
.audience-copy ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.audience-copy li{display:grid;grid-template-columns:130px 1fr;gap:22px;padding:19px 0;border-bottom:1px solid var(--line);font-size:14px}.audience-copy b{color:var(--white)}.audience-copy li span{color:#9fabad;line-height:1.5}

.cta-section { background:var(--teal-dark); padding:clamp(80px,9vw,140px) clamp(24px,7vw,118px); text-align:center; display:flex; flex-direction:column; align-items:center; }
.cta-section .eyebrow{color:#d9f4f0}.cta-section h2{font-size:clamp(44px,4.8vw,78px);line-height:1.03;max-width:1000px;margin:18px auto 25px}.cta-section p{max-width:690px;color:#d6e8e5;line-height:1.65;font-size:17px;margin-bottom:34px}.button-light{background:var(--paper);color:var(--ink)}

.site-footer { padding:64px clamp(24px,6vw,100px); display:grid; grid-template-columns:1.4fr .7fr .9fr; gap:50px; border-top:1px solid var(--line); background:#090d0f; color:#a6b1b5; font-size:13px; }
.site-footer img{width:210px;margin-bottom:18px}.site-footer p{font-size:13px}.footer-links,.footer-contact{display:flex;flex-direction:column;gap:13px}.footer-links a:hover,.footer-contact a:hover{color:var(--teal)}.footer-contact{text-align:right}.footer-contact span{margin-top:12px;color:#657277}
.footer-social{display:flex;flex-direction:column;gap:11px;margin-top:7px;padding-top:18px;border-top:1px solid var(--line)}.footer-social a{display:flex;align-items:center;justify-content:space-between;gap:18px}.footer-social a span{color:var(--teal);font-size:11px}

/* Inner pages */
.inner-hero { min-height:510px; padding:110px clamp(24px,7vw,118px); display:flex; flex-direction:column; justify-content:end; position:relative; background:#11191d; }
.inner-hero.has-image{min-height:660px;background-size:cover;background-position:center}.inner-hero.has-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,14,17,.97),rgba(9,14,17,.58) 58%,rgba(9,14,17,.2)),linear-gradient(0deg,rgba(9,14,17,.75),transparent 55%)}
.inner-hero > *{position:relative;z-index:1}.inner-hero h1{max-width:880px;margin:18px 0 26px}.inner-hero p{max-width:700px;color:#bdc7ca;font-size:20px;line-height:1.55}
.about-hero{min-height:590px;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr);align-items:end;gap:clamp(55px,8vw,140px);overflow:hidden}
.about-hero-copy{align-self:end}.about-hero-copy h1{max-width:820px}.about-hero-copy p{max-width:680px}
.about-hero-graphic{width:min(100%,520px);aspect-ratio:1.1;justify-self:end;position:relative;border:1px solid rgba(121,194,187,.16);background:linear-gradient(145deg,rgba(121,194,187,.055),transparent 58%);padding:clamp(24px,3vw,42px);display:flex;flex-direction:column;justify-content:center}
.about-hero-graphic:before{content:"";position:absolute;width:68%;aspect-ratio:1;border:1px solid rgba(121,194,187,.11);border-radius:50%;right:-30%;top:-27%}
.about-hero-graphic:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--teal);right:clamp(24px,3vw,42px);top:clamp(24px,3vw,42px);box-shadow:0 0 0 7px rgba(121,194,187,.08)}
.editor-frame{width:100%;aspect-ratio:1.65;position:relative;border:1px solid rgba(223,238,238,.28);background:rgba(8,13,16,.26)}
.editor-frame-grid{position:absolute;z-index:0;inset:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}
.editor-frame-grid span{border-right:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}.editor-frame-grid span:nth-child(3n){border-right:0}.editor-frame-grid span:nth-child(n+7){border-bottom:0}
.frame-corner{position:absolute;z-index:2;width:22px;height:22px;border-color:var(--teal);border-style:solid}.corner-one{left:-2px;top:-2px;border-width:3px 0 0 3px}.corner-two{right:-2px;top:-2px;border-width:3px 3px 0 0}.corner-three{left:-2px;bottom:-2px;border-width:0 0 3px 3px}.corner-four{right:-2px;bottom:-2px;border-width:0 3px 3px 0}
.wire-building{position:absolute;z-index:1;inset:5% 7% 3%;width:86%;height:92%;overflow:visible;filter:drop-shadow(0 0 10px rgba(121,194,187,.08))}
.wire-building path{fill:none;stroke:rgba(151,204,199,.48);stroke-width:1.15;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.wire-building .wire-plane{fill:rgba(121,194,187,.025);stroke:rgba(164,210,206,.58)}.wire-building .wire-roof{fill:rgba(121,194,187,.06)}
.wire-building-base path{stroke:rgba(121,194,187,.14)}
.wire-building-history path{fill:rgba(121,194,187,.008);stroke:rgba(121,194,187,.32);stroke-width:1.05;stroke-dasharray:3 5}
.wire-building-history.wire-stage-one path{stroke:rgba(121,194,187,.19)}.wire-building-history.wire-stage-two path{stroke:rgba(121,194,187,.25)}.wire-building-history.wire-stage-three path{stroke:rgba(121,194,187,.34)}
.wire-building-accent path{stroke:rgba(121,194,187,.9);stroke-width:1.6}
.editor-playhead{position:absolute;z-index:2;left:61%;top:0;width:1px;height:100%;background:rgba(121,194,187,.78)}.editor-playhead:before{content:"";position:absolute;left:-4px;top:-4px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:7px solid var(--teal)}
.editor-timeline{margin-top:28px}.timeline-meta{display:flex;justify-content:space-between;color:#8fa0a4;font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}.timeline-meta span:first-child{color:var(--teal)}
.timeline-track{height:42px;display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.timeline-track i{display:block;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035);position:relative}.timeline-track i:after{content:"";position:absolute;left:4px;right:4px;bottom:5px;height:2px;background:rgba(121,194,187,.2)}.timeline-track i:nth-child(-n+4):after{background:var(--teal)}
.graphic-caption{display:block;margin-top:18px;color:#75858a;font-size:9px;letter-spacing:.18em;text-transform:uppercase}
.content-split { display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(55px,9vw,150px);background:var(--paper);color:var(--ink)}
.content-split h2,.dark-content h2,.project-story h2{font-size:clamp(40px,4vw,64px);line-height:1.05}.rich-copy{font-size:17px;line-height:1.75;color:#4b575b}.rich-copy p+p{margin-top:22px}.rich-copy .large-copy{font-size:29px;line-height:1.4;color:var(--ink);font-weight:600;margin-bottom:26px;letter-spacing:-.01em}
.dark-content{background:#11191d}.dark-content .section-heading{align-items:start}.dark-content .section-heading p{max-width:570px;color:#a8b3b6;line-height:1.65}
.deliverables{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}.deliverable{padding:28px;border:1px solid var(--line);background:#172126}.deliverable span{color:var(--teal);font-size:11px}.deliverable h3{font-size:24px;margin:30px 0 12px}.deliverable p{color:#9da9ac;line-height:1.6;font-size:14px}
.examples-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.examples-grid .project-card p{min-height:0}.examples-grid .project-card h3{font-size:32px}
.project-story{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,8vw,140px)}
.project-story .fact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#ccd2d0;border:1px solid #ccd2d0;margin-top:40px}.fact-grid div{background:var(--paper);padding:24px}.fact-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#687477}.fact-grid strong{display:block;font-size:21px;margin-top:8px}
.about-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.about-proof div{background:#121a1e;padding:46px}.about-proof strong{display:block;color:var(--teal);font-size:44px;margin-bottom:14px}.about-proof span{color:#aeb9bc;line-height:1.5}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.contact-panel{padding:clamp(55px,7vw,100px);background:#10171a}.contact-panel.light{background:var(--paper);color:var(--ink)}.contact-panel h2{font-size:clamp(38px,4vw,64px);margin:18px 0 28px}.contact-list{display:flex;flex-direction:column;gap:18px;font-size:21px}.contact-list a{border-bottom:1px solid #8ca19e;padding-bottom:10px}.contact-note{color:#5a676b;line-height:1.7;margin-bottom:28px}.brief-list{list-style:none;padding:0;margin:0;border-top:1px solid #cbd1cf}.brief-list li{padding:16px 0;border-bottom:1px solid #cbd1cf;color:#3e4b4f}

@media (max-width: 1050px) {
  .site-header{grid-template-columns:1fr auto}.site-header > .desktop-nav,.header-cta{display:none}.mobile-nav{display:block}.hero{grid-template-columns:1fr}.hero-copy{min-height:620px}.hero-visual{min-height:620px}.project-grid{grid-template-columns:1fr 1fr}.project-card:last-child{grid-column:1/-1}.process-grid{grid-template-columns:1fr 1fr}.process-grid li:nth-child(2){border-right:0}.process-grid li:nth-child(n+3){border-top:1px solid #cad0ce;padding-top:34px}.process-grid li:nth-child(n+3):before{top:-4px}.audience-section{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr 1fr}.footer-contact{text-align:left}.site-footer>div:first-child{grid-column:1/-1}.deliverables{grid-template-columns:1fr 1fr}.about-hero{grid-template-columns:1fr;gap:44px;padding-top:90px}.about-hero-graphic{justify-self:start;width:min(100%,560px)}
}
@media (max-width: 700px) {
  .site-header{height:72px;padding:0 18px}.brand img{width:157px}.menu-toggle{min-width:88px;height:38px;padding:0 12px}.mobile-menu{inset:72px 0 0}.mobile-menu-inner{padding:34px 22px 38px}.mobile-menu nav a{min-height:82px}.mobile-menu nav strong{font-size:25px}.mobile-menu nav small{font-size:11px}.hero{min-height:auto}.hero-copy{min-height:580px;padding:75px 24px 55px}.hero h1{font-size:50px;line-height:1.02}.hero-lead{font-size:17px}.credibility-row{flex-direction:column;gap:10px;margin-top:40px}.hero-visual{min-height:520px}.viewfinder{width:70%;left:15%;top:24%}.signal-bar{grid-template-columns:1fr 1fr;padding:0}.signal-bar div{min-height:84px;padding:0 18px}.signal-bar div:nth-child(odd){border-left:0}.section-pad{padding:78px 24px}.intro-section,.content-split,.project-story,.contact-grid{grid-template-columns:1fr;gap:42px}.section-heading{align-items:start;flex-direction:column}.project-grid,.examples-grid,.deliverables{grid-template-columns:1fr}.project-card:last-child{grid-column:auto}.process-grid{grid-template-columns:1fr}.process-grid li,.process-grid li:not(:first-child){border-right:0;border-bottom:1px solid #cad0ce;padding:26px 0;min-height:0}.process-grid li:not(:first-child):before{left:0}.process-grid h3{margin:28px 0 10px}.audience-section{gap:50px}.audience-copy li{grid-template-columns:105px 1fr}.cta-section{padding:82px 24px}.site-footer{grid-template-columns:1fr;padding:55px 24px}.site-footer>div:first-child{grid-column:auto}.inner-hero{min-height:470px;padding:80px 24px}.inner-hero.has-image{min-height:570px}.inner-hero p{font-size:17px}.about-hero{display:flex;min-height:570px;gap:0}.about-hero-graphic{display:none}.about-proof{grid-template-columns:1fr}.contact-panel{padding:65px 24px}
}

:focus-visible{outline:2px solid var(--teal);outline-offset:4px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.skylinedrone-site #main-content,.skylinedrone-site .entry-content{background:var(--ink)}
.skylinedrone-site .skylinedrone-page,.skylinedrone-site .skylinedrone-divi-shell,.skylinedrone-site .skylinedrone-divi-shell .et_pb_row,.skylinedrone-site .skylinedrone-divi-shell .et_pb_column,.skylinedrone-site .skylinedrone-divi-shell .et_pb_code{width:100%;max-width:none;margin:0;padding:0}
.skylinedrone-site .entry-content>p:empty{display:none}

/* Native Divi 4 module layouts — v2.9.2. Typography, colours and hover values live in Divi module settings; CSS below controls structural layout and decorative relationships. */
body.skylinedrone-redesign #page-container {
  --sd-ink:#0d1215;
  --sd-ink-soft:#172126;
  --sd-paper:#f3f1ea;
  --sd-white:#ffffff;
  --sd-muted:#aeb9bd;
  --sd-teal:#79c2bb;
  --sd-teal-dark:#2f7774;
  background:#0d1215 !important;
  color:#fff;
}

/* The custom child-theme header is in normal document flow. Divi's fixed-nav
   class otherwise reserves an additional 80px above it on every breakpoint. */
body.et_fixed_nav.et_show_nav #page-container.skylinedrone-site {
  padding-top:0 !important;
}
body.skylinedrone-redesign #page-container #main-content,
body.skylinedrone-redesign #page-container .entry-content,
body.skylinedrone-redesign #page-container .skylinedrone-page { background:#0d1215 !important; margin:0 !important; padding:0 !important; }
body.skylinedrone-redesign #page-container .sd-section { margin:0 !important; padding:0 !important; }
body.skylinedrone-redesign #page-container .sd-row { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }
body.skylinedrone-redesign #page-container .sd-row:after { display:none; }
body.skylinedrone-redesign #page-container .sd-row>.et_pb_column { margin-right:0 !important; }
body.skylinedrone-redesign #page-container .sd-text,
body.skylinedrone-redesign #page-container .sd-image,
body.skylinedrone-redesign #page-container .sd-button { margin-bottom:0 !important; }

body.skylinedrone-redesign #page-container .sd-bg-ink { background:#0d1215; }
body.skylinedrone-redesign #page-container .sd-bg-ink-soft { background:#172126; }
body.skylinedrone-redesign #page-container .sd-bg-paper { background:#f3f1ea; }
body.skylinedrone-redesign #page-container .sd-bg-teal-dark { background:#2f7774; }
body.skylinedrone-redesign #page-container .sd-theme-dark { color:#fff; }
body.skylinedrone-redesign #page-container .sd-theme-light { color:#0d1215; }
body.skylinedrone-redesign #page-container .sd-text h1,
body.skylinedrone-redesign #page-container .sd-text h2,
body.skylinedrone-redesign #page-container .sd-text h3 { padding:0 !important; }
body.skylinedrone-redesign #page-container .sd-text p { padding-bottom:0 !important; }
body.skylinedrone-redesign #page-container .sd-eyebrow-module p { display:block; text-transform:uppercase; }
body.skylinedrone-redesign #page-container .sd-section-pad { padding:clamp(88px,9vw,150px) clamp(24px,7vw,118px) !important; }

/* Buttons */
body.skylinedrone-redesign #page-container .sd-button { display:inline-flex; transition:transform .2s ease,filter .2s ease; }
body.skylinedrone-redesign #page-container .sd-button .et_pb_button,
body.skylinedrone-redesign #page-container .sd-button.et_pb_button { min-height:50px; align-items:center; justify-content:center; padding:0 24px; text-transform:uppercase; box-shadow:none; }
body.skylinedrone-redesign #page-container .sd-button .et_pb_button:after,
body.skylinedrone-redesign #page-container .sd-button.et_pb_button:after { display:none !important; }
body.skylinedrone-redesign #page-container .sd-button:hover,
body.skylinedrone-redesign #page-container .sd-button:focus-visible { transform:translateY(-2px); filter:brightness(1.08); }
body.skylinedrone-redesign #page-container .sd-button-link .et_pb_button,
body.skylinedrone-redesign #page-container .sd-button-link.et_pb_button { min-height:0; padding:0 0 5px; border-bottom:1px solid currentColor; }
body.skylinedrone-redesign #page-container .sd-button-link .et_pb_button:after,
body.skylinedrone-redesign #page-container .sd-button-link.et_pb_button:after { content:"\2197" !important; display:inline-block !important; position:static !important; margin-left:8px !important; opacity:1 !important; font-family:inherit !important; font-size:12px !important; line-height:1 !important; vertical-align:baseline; }

/* Home hero */
body.skylinedrone-redesign #page-container .sd-hero-row { display:flex !important; min-height:calc(100vh - 88px); }
body.skylinedrone-redesign #page-container .sd-hero-copy-column { width:42% !important; padding:clamp(80px,10vw,150px) clamp(38px,6vw,104px) !important; display:flex !important; flex-flow:row wrap; align-content:center; justify-content:flex-start; }
body.skylinedrone-redesign #page-container .sd-hero-image-column { width:58% !important; min-height:700px; position:relative; overflow:hidden; }
body.skylinedrone-redesign #page-container .sd-hero-copy-column>.sd-text,
body.skylinedrone-redesign #page-container .sd-hero-copy-column>.sd-credentials { width:100%; }
body.skylinedrone-redesign #page-container .sd-hero-copy-column>.sd-copy-module:before { content:none !important; display:none !important; }
body.skylinedrone-redesign #page-container .sd-hero-copy-column>.et_pb_button_module_wrapper { flex:0 0 auto; width:max-content; margin-top:42px !important; }
body.skylinedrone-redesign #page-container .sd-hero-copy-column>.sd-copy-module+.et_pb_button_module_wrapper { margin-top:42px !important; }
body.skylinedrone-redesign #page-container .sd-hero-copy-column>.et_pb_button_module_wrapper+.et_pb_button_module_wrapper { margin-left:12px !important; }
body.skylinedrone-redesign #page-container .sd-hero-text h1 { max-width:760px; }
body.skylinedrone-redesign #page-container .sd-hero-text.sd-copy-module p { max-width:640px; }
body.skylinedrone-redesign #page-container .sd-hero-image,
body.skylinedrone-redesign #page-container .sd-hero-image .et_pb_image_wrap { width:100%; height:100%; display:block; }
body.skylinedrone-redesign #page-container .sd-hero-image img { width:100%; height:100%; min-height:700px; object-fit:cover; filter:saturate(.76) contrast(1.08); }
body.skylinedrone-redesign #page-container .sd-hero-image:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#0d1215 0%,transparent 25%),linear-gradient(0deg,rgba(13,18,21,.64),transparent 45%); pointer-events:none; }
body.skylinedrone-redesign #page-container .sd-hero-image-column:before { content:""; position:absolute; z-index:4; width:52%; aspect-ratio:1.65; border:1px solid rgba(255,255,255,.55); top:24%; left:24%; background:linear-gradient(#79c2bb,#79c2bb) left top/28px 3px no-repeat,linear-gradient(#79c2bb,#79c2bb) left top/3px 28px no-repeat,linear-gradient(#79c2bb,#79c2bb) right top/28px 3px no-repeat,linear-gradient(#79c2bb,#79c2bb) right top/3px 28px no-repeat,linear-gradient(#79c2bb,#79c2bb) left bottom/28px 3px no-repeat,linear-gradient(#79c2bb,#79c2bb) left bottom/3px 28px no-repeat,linear-gradient(#79c2bb,#79c2bb) right bottom/28px 3px no-repeat,linear-gradient(#79c2bb,#79c2bb) right bottom/3px 28px no-repeat; box-shadow:inset calc(26% + 1px) 0 0 -26% rgba(255,255,255,.28),inset 0 calc(50% + 1px) 0 -50% rgba(255,255,255,.28); pointer-events:none; }
body.skylinedrone-redesign #page-container .sd-hero-note { position:absolute; z-index:5; left:6%; bottom:11%; }
body.skylinedrone-redesign #page-container .sd-hero-note p { display:flex; flex-direction:column; text-transform:uppercase; font-size:clamp(17px,1.5vw,24px); line-height:1.18; letter-spacing:.04em; }
body.skylinedrone-redesign #page-container .sd-hero-note strong { color:#79c2bb; }
body.skylinedrone-redesign #page-container .sd-stage-chip { position:absolute; z-index:5; right:5%; top:5%; padding:13px 18px; border:1px solid rgba(255,255,255,.13); }
body.skylinedrone-redesign #page-container .sd-stage-chip p { text-transform:uppercase; letter-spacing:.12em; }
body.skylinedrone-redesign #page-container .sd-stage-chip span { color:#79c2bb; font-weight:600; }
body.skylinedrone-redesign #page-container .sd-stage-chip b { color:#718086; padding:0 8px; }
body.skylinedrone-redesign #page-container .sd-credentials { margin-top:58px !important; padding-top:20px; border-top:1px solid rgba(255,255,255,.13); }
body.skylinedrone-redesign #page-container .sd-credentials p { display:flex; gap:28px; }
body.skylinedrone-redesign #page-container .sd-credentials span { position:relative; padding-left:14px; }
body.skylinedrone-redesign #page-container .sd-credentials span:before { content:""; width:5px; height:5px; background:#79c2bb; border-radius:50%; position:absolute; left:0; top:6px; }

/* Signal strip */
body.skylinedrone-redesign #page-container .sd-signal-row { display:flex !important; padding:0 clamp(24px,5vw,82px) !important; border-block:1px solid rgba(255,255,255,.13); }
body.skylinedrone-redesign #page-container .sd-signal-row>.et_pb_column { width:25% !important; border-right:1px solid rgba(255,255,255,.13); }
body.skylinedrone-redesign #page-container .sd-signal-row>.et_pb_column:first-child { border-left:1px solid rgba(255,255,255,.13); }
body.skylinedrone-redesign #page-container .sd-signal-item p { min-height:105px; display:flex; align-items:center; gap:18px; padding:0 28px !important; }
body.skylinedrone-redesign #page-container .sd-signal-item b { color:#79c2bb !important; font-size:11px; }
body.skylinedrone-redesign #page-container .sd-signal-item span { color:#c3cccf !important; font-size:13px; }

/* Shared headings and copy */
body.skylinedrone-redesign #page-container .sd-intro-row,
body.skylinedrone-redesign #page-container .sd-split-row,
body.skylinedrone-redesign #page-container .sd-project-story-row,
body.skylinedrone-redesign #page-container .sd-audience-row,
body.skylinedrone-redesign #page-container .sd-about-hero-row { display:flex !important; gap:clamp(50px,8vw,140px); }
body.skylinedrone-redesign #page-container .sd-intro-row>.et_pb_column:first-child,
body.skylinedrone-redesign #page-container .sd-split-row>.et_pb_column:first-child,
body.skylinedrone-redesign #page-container .sd-project-story-row>.et_pb_column:first-child { flex:.85; width:auto !important; }
body.skylinedrone-redesign #page-container .sd-intro-row>.et_pb_column:last-child,
body.skylinedrone-redesign #page-container .sd-split-row>.et_pb_column:last-child,
body.skylinedrone-redesign #page-container .sd-project-story-row>.et_pb_column:last-child { flex:1.15; width:auto !important; }
body.skylinedrone-redesign #page-container .sd-audience-row>.et_pb_column:first-child { flex:1.1; width:auto !important; }
body.skylinedrone-redesign #page-container .sd-audience-row>.et_pb_column:last-child { flex:.9; width:auto !important; }
body.skylinedrone-redesign #page-container .sd-about-hero-row>.et_pb_column:first-child { flex:1.16; width:auto !important; }
body.skylinedrone-redesign #page-container .sd-about-hero-row>.et_pb_column:last-child { flex:.84; width:auto !important; }
body.skylinedrone-redesign #page-container .sd-rich-copy p+p { margin-top:22px !important; }
body.skylinedrone-redesign #page-container .sd-rich-copy .sd-large-copy { color:#0d1215 !important; font-size:clamp(25px,2.2vw,35px); line-height:1.35; font-weight:600; margin-bottom:26px !important; }
body.skylinedrone-redesign #page-container .sd-section-heading p,
body.skylinedrone-redesign #page-container .sd-process-heading p { opacity:.68; max-width:700px; }
body.skylinedrone-redesign #page-container .sd-heading-row { padding:clamp(88px,9vw,150px) clamp(24px,7vw,118px) 55px !important; }
body.skylinedrone-redesign #page-container .sd-heading-row>.et_pb_column { position:relative; }
body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper { position:absolute; right:0; bottom:0; width:max-content; text-align:right; }
body.skylinedrone-redesign #page-container .sd-heading-row .sd-button { position:static; }

/* Project cards */
body.skylinedrone-redesign #page-container .sd-project-grid,
body.skylinedrone-redesign #page-container .sd-examples-row { display:flex !important; gap:22px; padding:0 clamp(24px,7vw,118px) 24px !important; }
body.skylinedrone-redesign #page-container .sd-project-grid { padding-bottom:clamp(88px,9vw,150px) !important; }
body.skylinedrone-redesign #page-container .sd-examples-row:first-child { padding-top:64px !important; }
body.skylinedrone-redesign #page-container .sd-examples-row:last-child { padding-bottom:clamp(88px,9vw,150px) !important; }
body.skylinedrone-redesign #page-container .sd-project-card { flex:1 1 0 !important; min-width:0; max-width:none !important; width:0 !important; border:1px solid rgba(255,255,255,.13); background:#172126; overflow:hidden; padding-bottom:30px; transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
body.skylinedrone-redesign #page-container .sd-project-card:hover,
body.skylinedrone-redesign #page-container .sd-project-card:focus-within { transform:translateY(-5px); border-color:rgba(121,194,187,.7); box-shadow:0 18px 42px rgba(0,0,0,.22); }
body.skylinedrone-redesign #page-container .sd-project-image,
body.skylinedrone-redesign #page-container .sd-project-image .et_pb_image_wrap { display:block; width:100%; }
body.skylinedrone-redesign #page-container .sd-project-image a { position:relative; display:block; }
body.skylinedrone-redesign #page-container .sd-project-image a:before { content:""; position:absolute; z-index:3; left:24px; bottom:20px; width:50px; height:50px; border-radius:50%; background:#79c2bb; box-shadow:0 7px 20px rgba(0,0,0,.2); transition:transform .2s ease,background-color .2s ease; }
body.skylinedrone-redesign #page-container .sd-project-image a:after { content:""; position:absolute; z-index:4; left:44px; bottom:37px; width:0; height:0; border-top:8px solid transparent; border-bottom:8px solid transparent; border-left:12px solid #0d1215; transition:transform .2s ease; }
body.skylinedrone-redesign #page-container .sd-project-card:hover .sd-project-image a:before,
body.skylinedrone-redesign #page-container .sd-project-card:focus-within .sd-project-image a:before { transform:scale(1.08); background:#9bd4cf; }
body.skylinedrone-redesign #page-container .sd-project-image img { width:100%; aspect-ratio:16/9; object-fit:cover; }
body.skylinedrone-redesign #page-container .sd-project-heading h3 { margin:0 0 16px !important; }
body.skylinedrone-redesign #page-container .sd-project-description p { min-height:68px; }
body.skylinedrone-redesign #page-container .sd-project-card .sd-button-link { margin-left:28px !important; }
body.skylinedrone-redesign #page-container .sd-project-card .et_pb_button_module_wrapper { margin-top:24px !important; }

/* Process and deliverables */
body.skylinedrone-redesign #page-container .sd-process-heading-row { padding-bottom:60px !important; }
body.skylinedrone-redesign #page-container .sd-process-heading.sd-heading-module { max-width:860px; }
body.skylinedrone-redesign #page-container .sd-process-grid,
body.skylinedrone-redesign #page-container .sd-deliverables-row { display:flex !important; padding:0 clamp(24px,7vw,118px) !important; }
body.skylinedrone-redesign #page-container .sd-process-grid { padding-bottom:clamp(88px,9vw,150px) !important; }
body.skylinedrone-redesign #page-container .sd-process-grid>.et_pb_column { position:relative; width:25% !important; border-top:1px solid #cad0ce; border-right:1px solid #cad0ce; padding:28px; }
body.skylinedrone-redesign #page-container .sd-process-grid>.et_pb_column:before { content:""; position:absolute; z-index:2; top:-4px; left:-4px; width:8px; height:8px; border-radius:50%; background:#2f7774; }
body.skylinedrone-redesign #page-container .sd-process-grid>.et_pb_column:last-child { border-right:0; }
body.skylinedrone-redesign #page-container .sd-number-module { color:#2f7774; }
body.skylinedrone-redesign #page-container .sd-process-card h3,
body.skylinedrone-redesign #page-container .sd-deliverable-card h3 { margin:40px 0 14px !important; }
body.skylinedrone-redesign #page-container .sd-deliverables-row { gap:16px; padding-bottom:16px !important; }
body.skylinedrone-redesign #page-container .sd-deliverables-row:last-child { padding-bottom:clamp(88px,9vw,150px) !important; }
body.skylinedrone-redesign #page-container .sd-deliverables-row>.et_pb_column { flex:1; min-width:0; width:auto !important; border:1px solid rgba(255,255,255,.13); background:#172126; padding:28px; }
body.skylinedrone-redesign #page-container .sd-deliverable-card.sd-number-module { color:#79c2bb; }

/* Audience */
body.skylinedrone-redesign #page-container .sd-audience-row { align-items:center; }
body.skylinedrone-redesign #page-container .sd-audience-row>.et_pb_column { min-width:0; }
body.skylinedrone-redesign #page-container .sd-audience-image-column { position:relative; min-width:0; }
body.skylinedrone-redesign #page-container .sd-audience-image img { width:100%; aspect-ratio:1.18; object-fit:cover; filter:saturate(.72); }
body.skylinedrone-redesign #page-container .sd-image-caption { position:absolute; left:-18px; right:auto; bottom:28px; width:max-content !important; max-width:calc(100% + 18px); display:inline-block; padding:18px 28px; }
body.skylinedrone-redesign #page-container .sd-image-caption p { display:flex; flex-direction:column; text-transform:uppercase; }
body.skylinedrone-redesign #page-container .sd-image-caption span { font-size:9px; letter-spacing:.18em; }
body.skylinedrone-redesign #page-container .sd-image-caption strong { font-size:18px; margin-top:4px; }
body.skylinedrone-redesign #page-container .sd-audience-copy h2 { margin-bottom:40px !important; }
body.skylinedrone-redesign #page-container .sd-audience-copy,
body.skylinedrone-redesign #page-container .sd-audience-copy .et_pb_text_inner { min-width:0; width:100%; }
body.skylinedrone-redesign #page-container .sd-audience-copy ul { list-style:none; width:100%; padding:0; margin:0; border-top:1px solid rgba(255,255,255,.13); }
body.skylinedrone-redesign #page-container .sd-audience-copy li { display:grid; grid-template-columns:minmax(105px,130px) minmax(0,1fr); gap:22px; width:100%; padding:19px 0; border-bottom:1px solid rgba(255,255,255,.13); font-size:14px; }
body.skylinedrone-redesign #page-container .sd-audience-copy li span { min-width:0; color:#9fabad; line-height:1.5; }

/* CTA */
body.skylinedrone-redesign #page-container .sd-cta-section { display:flex; align-items:center; min-height:620px; overflow:hidden; }
body.skylinedrone-redesign #page-container .sd-cta-row { display:flex !important; padding:clamp(80px,9vw,140px) clamp(24px,7vw,118px) !important; text-align:center; }
body.skylinedrone-redesign #page-container .sd-cta-row>.et_pb_column { width:100% !important; display:flex; flex-direction:column; align-items:center; }
body.skylinedrone-redesign #page-container .sd-cta-text { width:100%; }
body.skylinedrone-redesign #page-container .sd-cta-text.sd-heading-module h2 { max-width:1000px; margin:0 auto !important; }
body.skylinedrone-redesign #page-container .sd-cta-text.sd-copy-module p { max-width:690px; margin:0 auto !important; }
body.skylinedrone-redesign #page-container .sd-cta-section .et_pb_button_module_wrapper { width:100%; margin-top:36px !important; text-align:center !important; }
body.skylinedrone-redesign #page-container .sd-cta-section .sd-button { margin:0 auto !important; }

/* Inner hero */
body.skylinedrone-redesign #page-container .sd-inner-hero { position:relative; min-height:360px; overflow:hidden; }
body.skylinedrone-redesign #page-container .sd-inner-hero-image { min-height:660px; }
body.skylinedrone-redesign #page-container .sd-inner-hero-image:before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(9,14,17,.97),rgba(9,14,17,.58) 58%,rgba(9,14,17,.2)),linear-gradient(0deg,rgba(9,14,17,.75),transparent 55%); }
body.skylinedrone-redesign #page-container .sd-inner-hero-row { position:relative; z-index:2; min-height:inherit; display:flex !important; align-items:center; padding:72px clamp(24px,7vw,118px) !important; }
body.skylinedrone-redesign #page-container .sd-inner-hero-image .sd-inner-hero-row { align-items:flex-end; padding-top:110px !important; padding-bottom:110px !important; }
body.skylinedrone-redesign #page-container .sd-inner-hero-text h1 { max-width:880px; }
body.skylinedrone-redesign #page-container .sd-inner-hero-text.sd-copy-module p { max-width:700px; }

/* Featured project and About */
body.skylinedrone-redesign #page-container .sd-fact-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:#ccd2d0; border:1px solid #ccd2d0; margin-top:40px; }
body.skylinedrone-redesign #page-container .sd-fact-grid div { background:#f3f1ea; padding:24px; }
body.skylinedrone-redesign #page-container .sd-fact-grid span { display:block; font-size:10px; text-transform:uppercase; letter-spacing:.15em; color:#687477 !important; }
body.skylinedrone-redesign #page-container .sd-fact-grid strong { display:block; color:#0d1215 !important; font-size:21px; margin-top:8px; }
body.skylinedrone-redesign #page-container .sd-project-story-row { align-items:start; }
body.skylinedrone-redesign #page-container .sd-featured-story-lead { margin-bottom:26px !important; }
body.skylinedrone-redesign #page-container .sd-featured-story-copy p+p { margin-top:22px !important; }
body.skylinedrone-redesign #page-container .sd-project-story-row .et_pb_button_module_wrapper { margin-top:30px !important; }
body.skylinedrone-redesign #page-container .sd-featured-reveal-section { overflow:hidden; }
body.skylinedrone-redesign #page-container .sd-featured-reveal-row { display:flex !important; align-items:flex-start; gap:clamp(70px,12vw,210px); min-height:500px; padding:clamp(78px,6vw,105px) clamp(24px,7vw,118px) !important; }
body.skylinedrone-redesign #page-container .sd-featured-reveal-row>.et_pb_column:first-child { flex:1.35; width:auto !important; }
body.skylinedrone-redesign #page-container .sd-featured-reveal-row>.et_pb_column:last-child { flex:.65; width:auto !important; padding-top:10px; }
body.skylinedrone-redesign #page-container .sd-featured-reveal-heading h2 { max-width:900px; }
body.skylinedrone-redesign #page-container .sd-featured-reveal-copy p { max-width:440px; }
body.skylinedrone-redesign #page-container .sd-about-hero { min-height:500px; }
body.skylinedrone-redesign #page-container .sd-about-hero-row { min-height:500px; align-items:center; padding:72px clamp(24px,7vw,118px) !important; overflow:hidden; }
body.skylinedrone-redesign #page-container .sd-about-hero-text h1 { max-width:820px; }
body.skylinedrone-redesign #page-container .sd-about-hero-text.sd-copy-module p { max-width:680px; }
body.skylinedrone-redesign #page-container .sd-proof-row { display:flex !important; }
body.skylinedrone-redesign #page-container .sd-proof-row>.et_pb_column { width:33.333% !important; border-right:1px solid rgba(255,255,255,.13); padding:46px; }
body.skylinedrone-redesign #page-container .sd-proof-row>.et_pb_column:last-child { border-right:0; }
body.skylinedrone-redesign #page-container .sd-proof-card strong { display:block; color:#79c2bb !important; font-size:44px; margin-bottom:14px; }
body.skylinedrone-redesign #page-container .sd-proof-card span { color:#aeb9bc !important; line-height:1.5; }

/* Contact */
body.skylinedrone-redesign #page-container .sd-contact-row { display:flex !important; }
body.skylinedrone-redesign #page-container .sd-contact-row>.et_pb_column { width:50% !important; }
body.skylinedrone-redesign #page-container .sd-contact-column { min-height:100%; padding:clamp(55px,7vw,100px); }
body.skylinedrone-redesign #page-container .sd-contact-panel h2 { margin-bottom:28px !important; }
body.skylinedrone-redesign #page-container .sd-contact-list { display:flex; flex-direction:column; gap:18px; font-size:21px; }
body.skylinedrone-redesign #page-container .sd-contact-list a { color:#fff; border-bottom:1px solid #8ca19e; padding-bottom:10px; }
body.skylinedrone-redesign #page-container .sd-brief-list { list-style:none; padding:0; margin:28px 0 0; border-top:1px solid #cbd1cf; }
body.skylinedrone-redesign #page-container .sd-brief-list li { padding:16px 0; border-bottom:1px solid #cbd1cf; color:#3e4b4f !important; }

/* Settled iPad/compact-desktop home-heading adjustment. Keep words intact and
   scale the heading before the layout switches to the mobile presentation. */
@media only screen and (min-width:981px) and (max-width:1400px) {
  body.home h1 {
    font-size:clamp(64px,5.3vw,78px) !important;
    line-height:.96 !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }
}

/* iPad portrait and landscape: remove viewport-height spacer behaviour from
   inner-page introductions and use consistent, intentional header breathing
   room. This keeps About and Examples content close to the navigation bar. */
@media only screen and (min-width:701px) and (max-width:1200px) {
  body.skylinedrone-redesign #page-container .sd-inner-hero,
  body.skylinedrone-redesign #page-container .sd-about-hero {
    min-height:0;
  }
  body.skylinedrone-redesign #page-container .sd-inner-hero-image {
    min-height:520px;
  }
  body.skylinedrone-redesign #page-container .sd-inner-hero-row {
    min-height:0;
    align-items:flex-start;
    padding:64px clamp(36px,6vw,72px) !important;
  }
  body.skylinedrone-redesign #page-container .sd-about-hero-row {
    min-height:0;
    align-items:center;
    padding:64px clamp(36px,6vw,72px) !important;
  }
  body.skylinedrone-redesign #page-container .sd-hero-note p {
    letter-spacing:.025em;
  }
}

@media (max-width:1050px) {
  body.skylinedrone-redesign #page-container .sd-hero-row,
  body.skylinedrone-redesign #page-container .sd-intro-row,
  body.skylinedrone-redesign #page-container .sd-split-row,
  body.skylinedrone-redesign #page-container .sd-project-story-row,
  body.skylinedrone-redesign #page-container .sd-audience-row,
  body.skylinedrone-redesign #page-container .sd-about-hero-row { flex-direction:column; }
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row { flex-direction:column; align-items:flex-start; min-height:0; }
  body.skylinedrone-redesign #page-container .sd-hero-copy-column,
  body.skylinedrone-redesign #page-container .sd-hero-image-column,
  body.skylinedrone-redesign #page-container .sd-intro-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-split-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-project-story-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-audience-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-about-hero-row>.et_pb_column { width:100% !important; }
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row>.et_pb_column { width:100% !important; }
  body.skylinedrone-redesign #page-container .sd-project-grid { flex-wrap:wrap; }
  body.skylinedrone-redesign #page-container .sd-project-grid>.et_pb_column { flex:1 1 calc(50% - 22px) !important; width:calc(50% - 22px) !important; }
  body.skylinedrone-redesign #page-container .sd-process-grid { flex-wrap:wrap; }
  body.skylinedrone-redesign #page-container .sd-process-grid>.et_pb_column { width:50% !important; }
}

@media (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-section-pad { padding:78px 24px !important; }
  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper { position:static; margin-top:24px !important; }
  body.skylinedrone-redesign #page-container .sd-hero-copy-column { min-height:580px; padding:75px 24px 55px !important; flex-direction:column; flex-wrap:nowrap; align-content:stretch; }
  body.skylinedrone-redesign #page-container .sd-hero-copy-column>.et_pb_button_module_wrapper { margin-top:12px !important; }
  body.skylinedrone-redesign #page-container .sd-hero-copy-column>.sd-copy-module+.et_pb_button_module_wrapper { margin-top:36px !important; }
  body.skylinedrone-redesign #page-container .sd-hero-copy-column>.et_pb_button_module_wrapper+.et_pb_button_module_wrapper { margin-left:0 !important; }
  body.skylinedrone-redesign #page-container .sd-hero-image-column,
  body.skylinedrone-redesign #page-container .sd-hero-image img { min-height:520px; }
  body.skylinedrone-redesign #page-container .sd-credentials p { flex-direction:column; gap:10px; }
  body.skylinedrone-redesign #page-container .sd-signal-row { flex-wrap:wrap; padding:0 !important; }
  body.skylinedrone-redesign #page-container .sd-signal-row>.et_pb_column { width:50% !important; }
  body.skylinedrone-redesign #page-container .sd-signal-item p { min-height:84px; padding:0 18px !important; }
  body.skylinedrone-redesign #page-container .sd-project-grid,
  body.skylinedrone-redesign #page-container .sd-examples-row,
  body.skylinedrone-redesign #page-container .sd-deliverables-row { flex-direction:column; padding-left:24px !important; padding-right:24px !important; }
  body.skylinedrone-redesign #page-container .sd-project-grid>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-examples-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-deliverables-row>.et_pb_column { width:100% !important; flex:1 1 100% !important; }
  body.skylinedrone-redesign #page-container .sd-process-grid { flex-direction:column; padding:0 24px 78px !important; }
  body.skylinedrone-redesign #page-container .sd-process-grid>.et_pb_column { width:100% !important; border-right:0; border-bottom:1px solid #cad0ce; }
  body.skylinedrone-redesign #page-container .sd-inner-hero-row { padding:80px 24px !important; }
  body.skylinedrone-redesign #page-container .sd-about-hero-row { min-height:570px; padding:80px 24px !important; }
  body.skylinedrone-redesign #page-container .sd-about-graphic { display:none; }
  body.skylinedrone-redesign #page-container .sd-proof-row,
  body.skylinedrone-redesign #page-container .sd-contact-row { flex-direction:column; }
  body.skylinedrone-redesign #page-container .sd-proof-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-contact-row>.et_pb_column { width:100% !important; }
  body.skylinedrone-redesign #page-container .sd-contact-column { padding:65px 24px; }
  body.skylinedrone-redesign #page-container .sd-cta-section { min-height:0; }
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row { padding:78px 24px !important; gap:34px; }
}

/* =========================================================
   v2.9.2 — responsive rhythm refinement
   15 Aug 2026

   Purpose:
   - stop tablet heading/action collisions
   - reduce oversized gaps when two-column rows stack
   - add deliberate breathing room where heading/copy modules
     were visually compressed
   - reduce tablet CTA dead space
   - keep desktop proportions substantially unchanged
   ========================================================= */

/* Explicit heading-to-secondary-copy rhythm on every viewport.
   Hero headings already carry their own module margin, so this
   targets only sections whose heading/copy modules otherwise touch. */
body.skylinedrone-redesign #page-container .sd-section-heading.sd-heading-module + .sd-section-heading.sd-copy-module,
body.skylinedrone-redesign #page-container .sd-process-heading.sd-heading-module + .sd-process-heading.sd-copy-module,
body.skylinedrone-redesign #page-container .sd-audience-copy.sd-heading-module + .sd-audience-copy.sd-copy-module,
body.skylinedrone-redesign #page-container .sd-cta-text.sd-heading-module + .sd-cta-text.sd-copy-module,
body.skylinedrone-redesign #page-container .sd-contact-panel.sd-heading-module + .sd-contact-panel.sd-copy-module {
  margin-top:18px !important;
}

/* iPad portrait/landscape and compact desktop.
   This covers the common 768/810/820/834/1024/1180 CSS-width range. */
@media only screen and (min-width:701px) and (max-width:1200px) {

  /* Bring general content sections into a consistent tablet rhythm. */
  body.skylinedrone-redesign #page-container .sd-section-pad {
    padding:76px clamp(36px,6vw,72px) !important;
  }

  /* Selected Sequences / stage headings:
     the action link must never sit on top of a long heading. */
  body.skylinedrone-redesign #page-container .sd-heading-row {
    padding:72px clamp(36px,6vw,72px) 34px !important;
  }
  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper {
    position:static !important;
    right:auto !important;
    bottom:auto !important;
    width:max-content !important;
    max-width:100%;
    margin-top:18px !important;
    text-align:left !important;
  }
  body.skylinedrone-redesign #page-container .sd-heading-row .sd-button {
    position:static !important;
  }

  /* The earlier 620px CTA minimum height caused large empty bands on iPad. */
  body.skylinedrone-redesign #page-container .sd-cta-section {
    min-height:0 !important;
  }
  body.skylinedrone-redesign #page-container .sd-cta-row {
    padding:78px clamp(36px,6vw,72px) !important;
  }

  /* Keep inner-page headers close enough to the compact header. */
  body.skylinedrone-redesign #page-container .sd-inner-hero-row,
  body.skylinedrone-redesign #page-container .sd-about-hero-row {
    padding:56px clamp(36px,6vw,72px) !important;
  }
  body.skylinedrone-redesign #page-container .sd-inner-hero-image {
    min-height:480px;
  }

  /* Featured-project reveal needs a controlled relationship between
     its headline and explanatory paragraph at tablet sizes. */
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row {
    min-height:0 !important;
    padding:70px clamp(36px,6vw,72px) !important;
    gap:44px !important;
  }
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row>.et_pb_column:last-child {
    padding-top:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-process-heading-row {
    padding-bottom:44px !important;
  }

  /* Example grids retain separation without creating a large blank band. */
  body.skylinedrone-redesign #page-container .sd-project-grid {
    padding-bottom:76px !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-row:first-child {
    padding-top:46px !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-row:last-child {
    padding-bottom:76px !important;
  }
}

/* At these widths the custom layout deliberately stacks its desktop columns.
   Override the old 8–12vw flex gaps and Divi's own column-bottom margins so
   there is one predictable source of vertical spacing. */
@media only screen and (min-width:701px) and (max-width:1050px) {
  body.skylinedrone-redesign #page-container .sd-intro-row,
  body.skylinedrone-redesign #page-container .sd-split-row,
  body.skylinedrone-redesign #page-container .sd-project-story-row,
  body.skylinedrone-redesign #page-container .sd-audience-row,
  body.skylinedrone-redesign #page-container .sd-about-hero-row {
    gap:38px !important;
  }

  body.skylinedrone-redesign #page-container .sd-intro-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-split-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-project-story-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-audience-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-about-hero-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row>.et_pb_column {
    margin-bottom:0 !important;
  }

  /* The home introduction was the clearest example of a stacked-column gap
     reading as a missing block of content. */
  body.skylinedrone-redesign #page-container .sd-intro-row {
    gap:34px !important;
  }

  /* Slightly tighter About stack keeps the wireframe connected to the copy. */
  body.skylinedrone-redesign #page-container .sd-about-hero-row {
    gap:30px !important;
  }

  /* The reveal section in the Featured Project screenshot previously inherited
     a 12vw desktop gap (~120px on a 1024px iPad). */
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row {
    gap:36px !important;
  }
}

/* iPhone / narrow mobile, portrait or landscape. */
@media only screen and (max-width:700px) {

  body.skylinedrone-redesign #page-container .sd-section-pad {
    padding:58px 22px !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row {
    padding:58px 22px 30px !important;
  }
  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper {
    position:static !important;
    width:max-content !important;
    max-width:100%;
    margin-top:16px !important;
    text-align:left !important;
  }

  body.skylinedrone-redesign #page-container .sd-intro-row,
  body.skylinedrone-redesign #page-container .sd-split-row,
  body.skylinedrone-redesign #page-container .sd-project-story-row,
  body.skylinedrone-redesign #page-container .sd-audience-row,
  body.skylinedrone-redesign #page-container .sd-about-hero-row {
    gap:28px !important;
  }

  body.skylinedrone-redesign #page-container .sd-intro-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-split-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-project-story-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-audience-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-about-hero-row>.et_pb_column,
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row>.et_pb_column {
    margin-bottom:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-inner-hero-row,
  body.skylinedrone-redesign #page-container .sd-about-hero-row {
    min-height:0 !important;
    padding:60px 22px !important;
  }
  body.skylinedrone-redesign #page-container .sd-about-hero {
    min-height:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-cta-section {
    min-height:0 !important;
  }
  body.skylinedrone-redesign #page-container .sd-cta-row {
    padding:64px 22px !important;
  }

  body.skylinedrone-redesign #page-container .sd-featured-reveal-row {
    min-height:0 !important;
    padding:58px 22px !important;
    gap:28px !important;
  }
  body.skylinedrone-redesign #page-container .sd-featured-reveal-row>.et_pb_column:last-child {
    padding-top:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-process-heading-row {
    padding-bottom:38px !important;
  }
  body.skylinedrone-redesign #page-container .sd-process-grid {
    padding-bottom:58px !important;
  }

  body.skylinedrone-redesign #page-container .sd-project-grid {
    padding-bottom:58px !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-row:first-child {
    padding-top:38px !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-row:last-child {
    padding-bottom:58px !important;
  }

  body.skylinedrone-redesign #page-container .sd-section-heading.sd-heading-module + .sd-section-heading.sd-copy-module,
  body.skylinedrone-redesign #page-container .sd-process-heading.sd-heading-module + .sd-process-heading.sd-copy-module,
  body.skylinedrone-redesign #page-container .sd-audience-copy.sd-heading-module + .sd-audience-copy.sd-copy-module,
  body.skylinedrone-redesign #page-container .sd-cta-text.sd-heading-module + .sd-cta-text.sd-copy-module,
  body.skylinedrone-redesign #page-container .sd-contact-panel.sd-heading-module + .sd-contact-panel.sd-copy-module {
    margin-top:15px !important;
  }
}

/* =========================================================
   v2.9.4 — Selected Sequences heading/action layout correction
   15 Aug 2026

   Corrects the v2.9.3 regression seen on the live home page:
   - no absolute positioning for "View all examples"
   - guaranteed visible CTA at all widths
   - deliberate vertical space between section heading and cards
   - desktop keeps CTA to the right without overlaying the cards
   - iPad/tablet stacks CTA below the heading with a safe right edge
   - selectors work even if the outer projects-section class is absent
   ========================================================= */

/* Base correction: make the action part of normal document flow.
   This deliberately overrides the earlier absolute-position rule. */
body.skylinedrone-redesign #page-container .sd-heading-row,
body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
  overflow:visible !important;
}
body.skylinedrone-redesign #page-container .sd-heading-row > .et_pb_column,
body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column {
  overflow:visible !important;
}
body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper,
body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
  position:static !important;
  inset:auto !important;
  right:auto !important;
  bottom:auto !important;
  transform:none !important;
  width:max-content !important;
  max-width:100% !important;
  z-index:auto !important;
}

/* Full desktop: eyebrow + headline remain left, CTA sits safely to the
   right within the same heading row. The row itself owns the clear space
   before the project cards. */
@media only screen and (min-width:1367px) {
  body.skylinedrone-redesign #page-container .sd-heading-row,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-top:clamp(88px,9vw,150px) !important;
    padding-right:clamp(24px,7vw,118px) !important;
    padding-bottom:70px !important;
    padding-left:clamp(24px,7vw,118px) !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row > .et_pb_column,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) max-content !important;
    grid-template-rows:auto auto !important;
    column-gap:clamp(44px,5vw,82px) !important;
    align-items:end !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row .sd-eyebrow-module,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .sd-eyebrow-module {
    grid-column:1 !important;
    grid-row:1 !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row .sd-heading-module,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .sd-heading-module {
    grid-column:1 !important;
    grid-row:2 !important;
    min-width:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    grid-column:2 !important;
    grid-row:1 / 3 !important;
    align-self:end !important;
    justify-self:end !important;
    margin:0 0 8px 0 !important;
    text-align:right !important;
  }
}

/* iPad / tablet / iPad Pro landscape: never force the CTA into the
   narrowing right edge. It becomes a deliberate second line below the
   heading, with enough clear space before the cards. */
@media only screen and (min-width:701px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container .sd-heading-row,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-top:76px !important;
    padding-right:clamp(40px,6vw,76px) !important;
    padding-bottom:54px !important;
    padding-left:clamp(40px,6vw,76px) !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row > .et_pb_column,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column {
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    align-self:flex-start !important;
    margin:26px 0 0 0 !important;
    text-align:left !important;
  }
}

/* Phones: same hierarchy, reduced proportionally. */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-heading-row,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-top:58px !important;
    padding-right:22px !important;
    padding-bottom:40px !important;
    padding-left:22px !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row > .et_pb_column,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column {
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    align-self:flex-start !important;
    margin:22px 0 0 0 !important;
    text-align:left !important;
  }
}


/* =========================================================
   v2.9.5 — Selected Sequences guaranteed separation
   15 Aug 2026

   The heading row and project-card row are separate Divi rows. Previous
   versions tried to create the clearance mainly with heading-row padding.
   On the live layout that clearance was being visually collapsed by Divi's
   row geometry. This version puts the separation on the PROJECT GRID itself,
   so the cards cannot sit directly beneath the heading or action link.
   ========================================================= */

/* Desktop: keep View all examples beside the headline, but vertically centre
   it against the headline rather than pinning it to the bottom edge. */
@media only screen and (min-width:1367px) {
  body.skylinedrone-redesign #page-container .sd-heading-row,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-bottom:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:end !important;
    margin:0 !important;
    padding:0 !important;
  }

  /* This margin is the authoritative gap. Do not rely on row padding. */
  body.skylinedrone-redesign #page-container .sd-heading-row + .sd-project-grid,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-project-grid {
    margin-top:52px !important;
  }
}

/* iPad / tablet / iPad Pro: action stays beneath the heading and receives
   its own clear breathing room before the cards begin. */
@media only screen and (min-width:701px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container .sd-heading-row,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-bottom:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    margin-top:22px !important;
    margin-bottom:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row + .sd-project-grid,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-project-grid {
    margin-top:44px !important;
  }
}

/* Phones: preserve the same hierarchy at a smaller scale. */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-heading-row,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-bottom:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row .et_pb_button_module_wrapper,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    margin-top:18px !important;
    margin-bottom:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-heading-row + .sd-project-grid,
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-project-grid {
    margin-top:34px !important;
  }
}

/* =========================================================
   v2.9.6 — Selected Sequences hard spacer fix
   15 Aug 2026

   The live Divi layout continued to let the visual heading descend into the
   project-card row despite margin/padding adjustments on the two rows.
   This fix creates a REAL final grid/flex item inside the heading column.
   That item occupies physical height in the row, so neither the headline nor
   "View all examples" can visually touch the cards below.
   ========================================================= */

/* Reset the previous row-to-row margin approach. The physical spacer below is
   now the single source of separation and cannot margin-collapse. */
body.skylinedrone-redesign #page-container .sd-projects-section .sd-project-grid,
body.skylinedrone-redesign #page-container .sd-heading-row + .sd-project-grid {
  margin-top:0 !important;
}

/* The generated heading row has one 4/4 column. Its ::after becomes a genuine
   final layout item and therefore guarantees room below BOTH heading and CTA. */
body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column::after {
  content:"" !important;
  display:block !important;
  visibility:hidden !important;
  pointer-events:none !important;
  width:100% !important;
  clear:both !important;
}

/* Large desktop: heading on left, CTA on right, then a full-width spacer row. */
@media only screen and (min-width:1367px) {
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-bottom:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) max-content !important;
    grid-template-rows:auto auto 58px !important;
    column-gap:clamp(48px,5vw,88px) !important;
    align-items:center !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .sd-eyebrow-module {
    grid-column:1 !important;
    grid-row:1 !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .sd-heading-module {
    grid-column:1 !important;
    grid-row:2 !important;
    min-width:0 !important;
    margin:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    position:static !important;
    inset:auto !important;
    grid-column:2 !important;
    grid-row:2 !important;
    align-self:center !important;
    justify-self:end !important;
    margin:0 !important;
    padding:0 !important;
    text-align:right !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column::after {
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    height:58px !important;
  }
}

/* iPad / iPad Pro / tablet: keep the action out of the squeezed right edge.
   CTA sits below the headline, then a deliberate physical spacer before cards. */
@media only screen and (min-width:701px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-top:76px !important;
    padding-right:clamp(40px,6vw,76px) !important;
    padding-bottom:0 !important;
    padding-left:clamp(40px,6vw,76px) !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column {
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .sd-heading-module {
    margin:0 !important;
    width:100% !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    position:static !important;
    inset:auto !important;
    align-self:flex-start !important;
    margin:24px 0 0 0 !important;
    padding:0 !important;
    text-align:left !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column::after {
    flex:0 0 48px !important;
    height:48px !important;
  }
}

/* Phones: same safe hierarchy at a smaller scale. */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row {
    padding-bottom:0 !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column {
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row .et_pb_button_module_wrapper {
    position:static !important;
    inset:auto !important;
    align-self:flex-start !important;
    margin:20px 0 0 0 !important;
    padding:0 !important;
    text-align:left !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column::after {
    flex:0 0 36px !important;
    height:36px !important;
  }
}


/* =========================================================
   v2.9.7 — Selected Sequences balanced spacing
   15 Aug 2026

   v2.9.6 proved the physical spacer method works reliably, but 58px was
   visually too generous on wide desktop. Keep the robust non-collapsing
   spacer and reduce it to a restrained editorial gap. Tablet and phone
   retain slightly larger relative breathing room because the action stacks.
   ========================================================= */

/* Wide desktop: concise but clearly separated. */
@media only screen and (min-width:1367px) {
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column {
    grid-template-rows:auto auto 22px !important;
  }

  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column::after {
    height:22px !important;
  }
}

/* iPad / iPad Pro / tablet: CTA remains below the headline, with a moderate
   buffer before the cards rather than the oversized v2.9.6 gap. */
@media only screen and (min-width:701px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column::after {
    flex:0 0 30px !important;
    height:30px !important;
  }
}

/* Phones: compact but not crowded. */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-projects-section .sd-heading-row > .et_pb_column::after {
    flex:0 0 24px !important;
    height:24px !important;
  }
}

/* =========================================================
   v2.9.8 — Six-stage heading-row regression repair
   15 Aug 2026

   v2.9.4 introduced broad .sd-heading-row grid/flex overrides while fixing
   the Selected Sequences CTA. The same utility class is also used by the
   Time-shift "Six-stage example" heading. On desktop those broad rules made
   its copy an unintended second grid column and removed the row's bottom
   spacing, which caused the heading/copy to look displaced above the cards.

   Important: this repair is scoped ONLY to .sd-deliverables-section.
   The Selected Sequences v2.9.7 layout remains untouched.
   ========================================================= */

/* Restore the Six-stage heading to its original single-column document flow. */
body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row > .et_pb_column {
  display:block !important;
  position:relative !important;
  overflow:visible !important;
}

body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row .sd-eyebrow-module,
body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row .sd-heading-module,
body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row .sd-copy-module {
  grid-column:auto !important;
  grid-row:auto !important;
  align-self:auto !important;
  justify-self:auto !important;
  width:auto !important;
  min-width:0 !important;
}

/* Desktop: restore the intended heading/copy stack and measured clearance
   before the six stage cards. */
@media only screen and (min-width:1367px) {
  body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row {
    padding:clamp(88px,9vw,150px) clamp(24px,7vw,118px) 55px !important;
  }
}

/* iPad / iPad Pro / tablet: keep the same single-column hierarchy with a
   moderate transition into the stage cards. */
@media only screen and (min-width:701px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row {
    padding:72px clamp(36px,6vw,76px) 38px !important;
  }
  body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row > .et_pb_column {
    display:block !important;
  }
}

/* Phones: compact but still clearly ordered. */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row {
    padding:58px 22px 30px !important;
  }
  body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row > .et_pb_column {
    display:block !important;
  }
}



/* =========================================================
   v2.9.9 — Six-stage micro-gap refinement
   15 Aug 2026

   Adds only a small, explicit gap between the explanatory copy and the
   first row of six-stage cards. This is deliberately scoped to the
   deliverables section and does not alter the Selected Sequences layout.
   ========================================================= */
body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row + .sd-deliverables-row {
  margin-top:12px !important;
}

@media only screen and (min-width:701px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row + .sd-deliverables-row {
    margin-top:12px !important;
  }
}

@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-deliverables-section .sd-heading-row + .sd-deliverables-row {
    margin-top:10px !important;
  }
}

/* =========================================================
   v2.9.10 — Six-stage copy clearance (direct module fix)
   15 Aug 2026

   v2.9.9 targeted the following row with margin-top. On the live Divi
   desktop layout that did not produce a visible change. This version
   applies the small clearance directly to the final explanatory Text
   module in the Six-stage heading. Because the space is inside the module,
   Divi cannot collapse or neutralise it between rows.
   ========================================================= */
body.skylinedrone-redesign #page-container
.sd-deliverables-section .sd-heading-row
.sd-section-heading.sd-copy-module {
  padding-bottom:14px !important;
}

@media only screen and (min-width:701px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container
  .sd-deliverables-section .sd-heading-row
  .sd-section-heading.sd-copy-module {
    padding-bottom:14px !important;
  }
}

@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container
  .sd-deliverables-section .sd-heading-row
  .sd-section-heading.sd-copy-module {
    padding-bottom:12px !important;
  }
}



/* =========================================================
   v2.9.11 — Examples hero-to-grid balance
   15 Aug 2026

   The Examples page had too much vertical separation between the hero copy
   ("Different projects. One clear method.") and the first project graphics.
   This is intentionally scoped to .sd-examples-hero / .sd-examples-section,
   so other inner-page heroes and card grids are unaffected.
   ========================================================= */

/* Desktop: preserve the top breathing room under the main navigation, but
   reduce only the empty space below the intro copy and above the cards. */
@media only screen and (min-width:1201px) {
  body.skylinedrone-redesign #page-container .sd-examples-hero {
    min-height:0 !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-hero .sd-inner-hero-row {
    min-height:0 !important;
    padding-top:72px !important;
    padding-bottom:44px !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-section .sd-examples-row:first-child {
    padding-top:38px !important;
  }
}

/* iPad / compact desktop: keep the same relationship without crowding the
   copy or allowing the first row to float too far away. */
@media only screen and (min-width:701px) and (max-width:1200px) {
  body.skylinedrone-redesign #page-container .sd-examples-hero {
    min-height:0 !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-hero .sd-inner-hero-row {
    min-height:0 !important;
    padding-top:56px !important;
    padding-bottom:34px !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-section .sd-examples-row:first-child {
    padding-top:34px !important;
  }
}

/* Phone: retain a clear break, but avoid a large blank band before imagery. */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-examples-hero {
    min-height:0 !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-hero .sd-inner-hero-row {
    min-height:0 !important;
    padding-top:60px !important;
    padding-bottom:38px !important;
  }
  body.skylinedrone-redesign #page-container .sd-examples-section .sd-examples-row:first-child {
    padding-top:30px !important;
  }
}

/* =========================================================
   v2.9.12 — Process subtitle micro-clearance
   15 Aug 2026

   Adds a small physical gap between the process-section supporting copy
   ("Planned around the programme...") and the four-step graphic/grid below.
   The clearance is applied as padding inside the following process grid so
   Divi cannot collapse it. No other section spacing is changed.
   ========================================================= */
body.skylinedrone-redesign #page-container
.sd-process-heading-row + .sd-process-grid {
  padding-top:14px !important;
}

@media only screen and (min-width:701px) and (max-width:1200px) {
  body.skylinedrone-redesign #page-container
  .sd-process-heading-row + .sd-process-grid {
    padding-top:12px !important;
  }
}

@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container
  .sd-process-heading-row + .sd-process-grid {
    padding-top:10px !important;
  }
}

/* =========================================================
   v2.9.13 — Mobile About graphic + WordPress theme preview
   15 Aug 2026

   1) Keeps the editor/wireframe About graphic visible on phones.
   2) Gives the stacked mobile About hero enough natural height and spacing.
   3) A root-level screenshot.png is included in the theme package so the
      Skylinedrone identity appears on the WordPress Themes screen.
   ========================================================= */

@media only screen and (max-width:700px) {
  /* Native/fallback layout */
  .about-hero {
    min-height:auto !important;
    flex-direction:column;
    gap:34px !important;
  }

  .about-hero-graphic {
    display:flex !important;
    width:100% !important;
    max-width:520px;
    margin:0 auto;
    padding:24px;
  }

  /* Native Divi layout */
  body.skylinedrone-redesign #page-container .sd-about-hero-row {
    min-height:0 !important;
    gap:34px !important;
    align-items:stretch !important;
    padding-top:64px !important;
    padding-bottom:64px !important;
  }

  body.skylinedrone-redesign #page-container .sd-about-graphic {
    display:block !important;
    width:100% !important;
    max-width:520px !important;
    margin:0 auto !important;
  }

  body.skylinedrone-redesign #page-container
  .sd-about-graphic .about-hero-graphic {
    display:flex !important;
    width:100% !important;
    max-width:520px !important;
    margin:0 auto !important;
    padding:24px !important;
  }
}

/* Slightly smaller phones: keep the graphic legible without crowding */
@media only screen and (max-width:420px) {
  body.skylinedrone-redesign #page-container
  .sd-about-graphic .about-hero-graphic,
  .about-hero-graphic {
    padding:20px !important;
  }

  body.skylinedrone-redesign #page-container .sd-about-hero-row {
    gap:28px !important;
    padding-top:56px !important;
    padding-bottom:56px !important;
  }
}

/* =========================================================
   v2.9.14 — iPad landscape major-heading balance
   15 Aug 2026

   The 1180px-class iPad landscape viewport keeps the two-column
   composition, so desktop-scale headings were visually overpowering
   the adjacent graphic/copy. Scale only those two-column headings
   at wide-tablet / iPad-landscape widths.
   ========================================================= */

@media only screen and (min-width:1051px) and (max-width:1366px) {

  /* About hero: keep the graphic and headline balanced as a pair. */
  body.skylinedrone-redesign #page-container
  .sd-about-hero-text.sd-heading-module h1 {
    font-size:clamp(54px,4.75vw,62px) !important;
    line-height:1.015 !important;
    letter-spacing:-0.018em !important;
    max-width:720px !important;
  }

  /* Two-column content headings, including:
     "One capture plan. Multiple useful outputs." */
  body.skylinedrone-redesign #page-container
  .sd-content-split .sd-split-heading.sd-heading-module h2 {
    font-size:clamp(50px,4.35vw,58px) !important;
    line-height:1.025 !important;
    letter-spacing:-0.016em !important;
    max-width:650px !important;
  }

  /* Biography split uses the same visual language; keep it consistent. */
  body.skylinedrone-redesign #page-container
  .sd-split-row .sd-split-heading.sd-heading-module h2 {
    font-size:clamp(50px,4.35vw,58px) !important;
    line-height:1.025 !important;
  }
}

/* Slightly narrower landscape tablets that have not yet stacked:
   keep the type scale from jumping abruptly at 1051px. */
@media only screen and (min-width:981px) and (max-width:1050px) {
  body.skylinedrone-redesign #page-container
  .sd-about-hero-text.sd-heading-module h1 {
    font-size:54px !important;
    line-height:1.02 !important;
  }

  body.skylinedrone-redesign #page-container
  .sd-content-split .sd-split-heading.sd-heading-module h2,
  body.skylinedrone-redesign #page-container
  .sd-split-row .sd-split-heading.sd-heading-module h2 {
    font-size:50px !important;
    line-height:1.03 !important;
  }
}

/* =========================================================
   v2.9.15 — iPad landscape audience-heading balance
   15 Aug 2026

   The "Built for project teams" two-column section kept the full
   desktop audience heading scale on wide iPad, producing too many
   oversized short lines. This patch is deliberately scoped to that
   one heading and does not alter the image, list, desktop or mobile.
   ========================================================= */

@media only screen and (min-width:1051px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container
  .sd-audience-row .sd-audience-copy.sd-heading-module h2 {
    font-size:clamp(46px,4.15vw,54px) !important;
    line-height:1.015 !important;
    letter-spacing:-0.015em !important;
    max-width:580px !important;
    margin-bottom:30px !important;
  }
}

@media only screen and (min-width:981px) and (max-width:1050px) {
  body.skylinedrone-redesign #page-container
  .sd-audience-row .sd-audience-copy.sd-heading-module h2 {
    font-size:46px !important;
    line-height:1.02 !important;
    letter-spacing:-0.012em !important;
    margin-bottom:28px !important;
  }
}

/* =========================================================
   v2.9.16 — iPad landscape featured-reveal heading balance
   15 Aug 2026

   "Progress becomes a relationship, not a collection of clips."
   remained too large on iPad landscape / wide-tablet widths.
   Reduce only that heading on the Featured Project page so the
   two-column relationship feels balanced with the supporting copy.
   ========================================================= */

@media only screen and (min-width:981px) and (max-width:1366px) {
  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-heading.sd-section-heading h2 {
    font-size: clamp(52px, 4.55vw, 62px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.018em !important;
    max-width: 760px !important;
  }

  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-copy {
    max-width: 420px !important;
  }
}

/* Slightly narrower wide-tablet range before stacking */
@media only screen and (min-width:981px) and (max-width:1120px) {
  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-heading.sd-section-heading h2 {
    font-size: 50px !important;
    line-height: 1.03 !important;
    max-width: 700px !important;
  }
}

/* =========================================================
   v2.9.17 — iPad portrait Featured Project reveal balance
   15 Aug 2026

   Portrait iPad stacks this section vertically. The desktop/tablet
   type scale was still too dominant once stacked, so both headline
   and supporting paragraph are reduced slightly and the inter-column
   gap is tightened for a more balanced reading hierarchy.
   ========================================================= */

@media only screen
  and (min-width:701px)
  and (max-width:1024px)
  and (orientation:portrait) {

  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-row {
    gap:28px !important;
    padding-top:64px !important;
    padding-bottom:64px !important;
  }

  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-heading.sd-section-heading h2 {
    font-size:clamp(40px,5.1vw,46px) !important;
    line-height:1.04 !important;
    letter-spacing:-0.014em !important;
    max-width:720px !important;
  }

  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-copy {
    max-width:680px !important;
  }

  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-copy p {
    font-size:16px !important;
    line-height:1.65 !important;
    max-width:680px !important;
  }
}

/* 12.9-inch iPad portrait can report a 1024px CSS viewport.
   Keep the same portrait treatment explicitly at that edge. */
@media only screen
  and (width:1024px)
  and (orientation:portrait) {

  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-heading.sd-section-heading h2 {
    font-size:46px !important;
  }

  body.skylinedrone-redesign #page-container
  .sd-featured-reveal-copy p {
    font-size:16px !important;
  }
}

/* =========================================================
   v2.9.23 — narrow-desktop home hero balance
   16 Aug 2026

   Some desktop browser windows land between the wide desktop
   composition and the 1400px compact rule. In that range the 42%
   copy column plus generous desktop padding leaves too little usable
   width for "Progress with Perspective.", allowing the final word to
   break awkwardly. Keep the two-column desktop composition, but give
   the copy more usable width and scale the heading smoothly.
   ========================================================= */

@media only screen and (min-width:1401px) and (max-width:1720px) {
  body.skylinedrone-redesign.home #page-container .sd-hero-copy-column {
    width:44% !important;
    padding-left:clamp(46px,4vw,64px) !important;
    padding-right:clamp(46px,4vw,64px) !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-hero-image-column {
    width:56% !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-hero-text h1 {
    font-size:clamp(60px,4.35vw,70px) !important;
    line-height:.98 !important;
    letter-spacing:-0.015em !important;
    max-width:620px !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }

  body.skylinedrone-redesign.home #page-container
  .sd-hero-text.sd-copy-module p {
    max-width:590px !important;
    font-size:clamp(17px,1.25vw,20px) !important;
    line-height:1.62 !important;
  }

  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column>.sd-copy-module+.et_pb_button_module_wrapper {
    margin-top:34px !important;
  }
}

/* Extra safeguard around the common 1440–1600px desktop window. */
@media only screen and (min-width:1401px) and (max-width:1600px) {
  body.skylinedrone-redesign.home #page-container .sd-hero-text h1 {
    font-size:clamp(58px,4.15vw,66px) !important;
    max-width:600px !important;
  }
}

/* =========================================================
   v2.9.25 — Home hero CTA hard fix
   16 Aug 2026

   Divi applies the custom sd-button class to the actual <a> element,
   not to .et_pb_button_module_wrapper.  The previous v2.9.24 selector
   therefore did not match the live buttons.

   This version targets the real Divi structure:
     wrapper: .sd-hero-copy-column > .et_pb_button_module_wrapper
     button:  wrapper > a.et_pb_button.sd-button

   Both Home CTAs are now an identical 210 x 54px box at every viewport.
   ========================================================= */

body.skylinedrone-redesign.home #page-container
.sd-hero-copy-column > .et_pb_button_module_wrapper {
  flex:0 0 210px !important;
  width:210px !important;
  min-width:210px !important;
  max-width:210px !important;
  height:54px !important;
  min-height:54px !important;
  display:flex !important;
  align-items:stretch !important;
  align-self:flex-start !important;
  box-sizing:border-box !important;
}

body.skylinedrone-redesign.home #page-container
.sd-hero-copy-column > .et_pb_button_module_wrapper > a.et_pb_button.sd-button {
  width:210px !important;
  min-width:210px !important;
  max-width:210px !important;
  height:54px !important;
  min-height:54px !important;
  max-height:54px !important;
  margin:0 !important;
  padding:0 16px !important;
  border-width:1px !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

/* Desktop + iPad landscape/tablet: exact same top baseline and gap. */
@media only screen and (min-width:701px) {
  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column > .et_pb_button_module_wrapper {
    margin-top:42px !important;
  }

  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column > .et_pb_button_module_wrapper
  + .et_pb_button_module_wrapper {
    margin-left:14px !important;
  }
}

/* Intermediate/narrow desktop: reduce the shared top gap, not one button. */
@media only screen and (min-width:1401px) and (max-width:1720px) {
  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column > .et_pb_button_module_wrapper {
    margin-top:34px !important;
  }
}

/* Phone: same button dimensions, stacked cleanly. */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column > .et_pb_button_module_wrapper {
    flex:0 0 54px !important;
    width:210px !important;
    min-width:210px !important;
    max-width:210px !important;
    height:54px !important;
    margin-left:0 !important;
  }

  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column > .sd-copy-module
  + .et_pb_button_module_wrapper {
    margin-top:36px !important;
  }

  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column > .et_pb_button_module_wrapper
  + .et_pb_button_module_wrapper {
    margin-top:12px !important;
    margin-left:0 !important;
  }
}

/* =========================================================
   v2.9.26 — Intermediate desktop Home hero
   16 Aug 2026

   At 1051–1400px the Home hero was still using the original 42/58
   column split and large desktop padding. That left less than the
   434px required by the two equal 210px CTAs plus their 14px gap,
   so the second button wrapped onto a new line.

   In this intermediate range only:
   - use a balanced 50/50 hero split;
   - reduce horizontal copy padding;
   - scale headline/copy slightly;
   - keep BOTH 210x54 CTAs on one row.
   At 1050px and below the existing stacked tablet layout takes over.
   ========================================================= */

@media only screen and (min-width:1051px) and (max-width:1400px) {

  body.skylinedrone-redesign.home #page-container .sd-hero-copy-column {
    width:50% !important;
    padding-top:clamp(68px,6vw,88px) !important;
    padding-bottom:clamp(58px,5vw,78px) !important;
    padding-left:clamp(34px,3.3vw,46px) !important;
    padding-right:clamp(34px,3.3vw,46px) !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-hero-image-column {
    width:50% !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-hero-text h1 {
    font-size:clamp(54px,4.6vw,64px) !important;
    line-height:.99 !important;
    letter-spacing:-0.014em !important;
    max-width:540px !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }

  body.skylinedrone-redesign.home #page-container
  .sd-hero-text.sd-copy-module p {
    font-size:clamp(16px,1.35vw,19px) !important;
    line-height:1.58 !important;
    max-width:540px !important;
  }

  /* Keep the two equal CTAs together as one horizontal pair. */
  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column > .et_pb_button_module_wrapper {
    flex:0 0 210px !important;
    width:210px !important;
    min-width:210px !important;
    max-width:210px !important;
    margin-top:30px !important;
  }

  body.skylinedrone-redesign.home #page-container
  .sd-hero-copy-column > .et_pb_button_module_wrapper
  + .et_pb_button_module_wrapper {
    margin-left:14px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-credentials {
    margin-top:42px !important;
  }
}

/* =========================================================
   v2.9.47 — NEW Home hero banner / clean responsive reset
   17 Aug 2026

   Rebuilds the Home hero around the new 1519x474 flight-path banner.
   All v2.9.33–v2.9.46 hero patches were removed to eliminate accumulated
   negative margins, oversizing and breakpoint conflicts.

   The new banner begins at the left edge of its own canvas, so it can be
   positioned as a normal right-column visual.
   ========================================================= */

body.skylinedrone-redesign.home #page-container .sd-home-hero,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-row {
  position:relative !important;
  overflow:hidden !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-row {
  min-height:clamp(650px,calc(100vh - 88px),820px) !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-copy-column {
  position:relative !important;
  z-index:2 !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image-column {
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
  min-height:650px !important;
  background:none !important;
  overflow:visible !important;
}

/* Remove superseded technical/ghost treatment. */
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image:after,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image-column:before {
  content:none !important;
  display:none !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-stage-chip {
  display:none !important;
}

/* Force the new banner, while keeping the Divi image module as the semantic
   source/fallback. This also avoids stale Divi image cache after theme upload. */
body.skylinedrone-redesign.home #page-container
.sd-home-hero .sd-hero-image,
body.skylinedrone-redesign.home #page-container
.sd-home-hero .sd-hero-image .et_pb_image_wrap {
  display:block !important;
  position:relative !important;
  height:auto !important;
  min-height:0 !important;
  line-height:0 !important;
  box-sizing:border-box !important;
}

body.skylinedrone-redesign.home #page-container
.sd-home-hero .sd-hero-image .et_pb_image_wrap {
  background-image:url("assets/images/home-hero-time-shift-wireframe-v3414.webp") !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:contain !important;
  aspect-ratio:1737 / 469 !important;
}

body.skylinedrone-redesign.home #page-container
.sd-home-hero .sd-hero-image img {
  width:100% !important;
  height:auto !important;
  display:block !important;
  opacity:0 !important;
}

/* Strapline remains live HTML, directly related to the banner width. */
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note {
  position:static !important;
  box-sizing:border-box !important;
  text-align:right !important;
  align-self:center !important;
  transform:none !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  width:100% !important;
  margin:0 !important;
  font-size:clamp(15px,1.02vw,18px) !important;
  line-height:1.16 !important;
  letter-spacing:.045em !important;
}

/* ------------------------- WIDE DESKTOP ------------------------- */
@media only screen and (min-width:1401px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-copy-column {
    width:43% !important;
    padding-left:clamp(54px,4.2vw,84px) !important;
    padding-right:clamp(38px,3vw,60px) !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image-column {
    width:57% !important;
    top:-24px !important;
    padding:46px clamp(38px,3vw,58px) 34px 8px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image {
    width:108% !important;
    max-width:1220px !important;
    margin:0 0 0 -5% !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image .et_pb_image_wrap {
    width:100% !important;
    max-width:none !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note {
    width:108% !important;
    max-width:1220px !important;
    margin:10px 0 0 -5% !important;
    padding:0 22px 0 0 !important;
  }
}

/* ---------------------- INTERMEDIATE DESKTOP -------------------- */
@media only screen and (min-width:1051px) and (max-width:1400px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image-column {
    width:50% !important;
    top:-18px !important;
    padding:38px 26px 30px 6px !important;
    overflow:visible !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image {
    width:110% !important;
    max-width:none !important;
    margin:0 0 0 -7% !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image .et_pb_image_wrap {
    width:100% !important;
    max-width:none !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note {
    width:110% !important;
    max-width:none !important;
    margin:8px 0 0 -7% !important;
    padding:0 18px 0 0 !important;
  }
}

/* -------- REDUCED DESKTOP / iPAD LANDSCAPE: TWO COLUMNS -------- */
@media only screen
  and (min-width:900px)
  and (max-width:1050px)
  and (orientation:landscape) {

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-row {
    flex-direction:row !important;
    align-items:stretch !important;
    min-height:610px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-copy-column {
    width:46% !important;
    min-height:610px !important;
    padding-left:clamp(34px,4vw,48px) !important;
    padding-right:clamp(24px,3vw,38px) !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image-column {
    width:54% !important;
    min-height:610px !important;
    top:-14px !important;
    padding:36px 22px 28px 0 !important;
    overflow:visible !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image {
    width:109% !important;
    max-width:none !important;
    margin:0 0 0 -6% !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image .et_pb_image_wrap {
    width:100% !important;
    max-width:none !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note {
    width:109% !important;
    max-width:none !important;
    margin:8px 0 0 -6% !important;
    padding:0 18px 0 0 !important;
    text-align:right !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
    align-items:flex-end !important;
  }
}

/* ------------------- TABLET / iPAD PORTRAIT -------------------- */
@media only screen and (max-width:1050px) and (orientation:portrait),
       only screen and (min-width:701px) and (max-width:899px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-row {
    min-height:0 !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image-column {
    width:100% !important;
    min-height:0 !important;
    top:0 !important;
    padding:30px clamp(24px,5vw,48px) 42px !important;
    overflow:hidden !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image {
    width:100% !important;
    max-width:980px !important;
    margin:0 auto !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image .et_pb_image_wrap {
    width:100% !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note {
    width:100% !important;
    max-width:980px !important;
    margin:10px auto 0 !important;
    padding:0 12px !important;
    text-align:right !important;
  }
}

/* ----------------------------- PHONE ---------------------------- */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image-column {
    width:100% !important;
    min-height:0 !important;
    top:0 !important;
    padding:24px 14px 34px !important;
    overflow:hidden !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image {
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note {
    width:100% !important;
    max-width:100% !important;
    margin:8px 0 0 !important;
    padding:0 8px !important;
    text-align:right !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
    font-size:14px !important;
    align-items:flex-end !important;
  }
}


/* =========================================================
   v2.9.48 — Home hero visual-before-CTA hierarchy
   17 Aug 2026

   Moves the Time-shift flight-path banner directly beneath the explanatory
   copy and before the CTA buttons. The source order is now identical at every
   breakpoint: proposition -> visual -> action -> credibility.

   The hero is intentionally one responsive visual stack. Width, spacing and
   button behaviour are tuned per viewport rather than reverting to a separate
   right-hand banner column on desktop.
   ========================================================= */

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-row {
  display:block !important;
  min-height:0 !important;
  overflow:hidden !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
  width:100% !important;
  max-width:none !important;
  min-height:0 !important;
  margin:0 !important;
  padding:clamp(74px,6.4vw,112px) clamp(42px,5.4vw,104px) clamp(58px,5vw,88px) !important;
  display:flex !important;
  flex-flow:row wrap !important;
  align-content:flex-start !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  box-sizing:border-box !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-text,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
  flex:0 0 100% !important;
  width:100% !important;
}

/* Keep the proposition readable without allowing desktop line lengths to run
   too far across the canvas. */
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-text.sd-eyebrow-module,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-text.sd-heading-module,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-text.sd-copy-module {
  max-width:980px !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-text h1 {
  max-width:900px !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-text.sd-copy-module p {
  max-width:940px !important;
}

/* Banner immediately follows “clear visual record.” */
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image {
  width:min(100%,1280px) !important;
  max-width:1280px !important;
  margin:34px 0 0 !important;
  position:relative !important;
  height:auto !important;
  min-height:0 !important;
  line-height:0 !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image .et_pb_image_wrap {
  height:auto !important;
  min-height:0 !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image .et_pb_image_wrap {
  width:100% !important;
  max-width:none !important;
  aspect-ratio:1737 / 469 !important;
  background-image:url("assets/images/home-hero-time-shift-wireframe-v3414.webp") !important;
  background-repeat:no-repeat !important;
  background-position:left center !important;
  background-size:contain !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-image img {
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  opacity:0 !important;
}

/* Caption remains visually attached to the banner, not to the CTA group. */
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
  width:min(100%,1280px) !important;
  max-width:1280px !important;
  margin:8px 0 0 !important;
  padding:0 12px 0 0 !important;
  position:static !important;
  text-align:right !important;
  transform:none !important;
  box-sizing:border-box !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
  align-items:flex-end !important;
  margin:0 !important;
  font-size:clamp(15px,1.02vw,18px) !important;
}

/* CTAs now follow the visual. */
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper {
  flex:0 0 262px !important;
  width:262px !important;
  min-width:262px !important;
  max-width:262px !important;
  margin:34px 0 0 !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper + .et_pb_button_module_wrapper {
  margin-left:14px !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper .sd-button,
body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper .et_pb_button {
  width:100% !important;
  min-height:54px !important;
  justify-content:center !important;
  text-align:center !important;
}

body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
  max-width:1280px !important;
  margin:44px 0 0 !important;
  padding-top:20px !important;
}

/* ------------------------- WIDE DESKTOP ------------------------- */
@media only screen and (min-width:1401px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
    padding-left:clamp(72px,5.2vw,104px) !important;
    padding-right:clamp(72px,5.2vw,104px) !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    max-width:1320px !important;
  }
}

/* ---------------------- INTERMEDIATE DESKTOP -------------------- */
@media only screen and (min-width:1051px) and (max-width:1400px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
    padding:72px clamp(48px,5vw,72px) 62px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    max-width:1120px !important;
  }
}

/* -------- REDUCED DESKTOP / iPAD LANDSCAPE: STACKED FLOW ------- */
@media only screen and (min-width:900px) and (max-width:1050px) and (orientation:landscape) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
    padding:60px 44px 52px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-text.sd-heading-module h1 {
    font-size:clamp(58px,6.2vw,66px) !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    max-width:900px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image {
    margin-top:30px !important;
  }
}

/* ------------------- TABLET / iPAD PORTRAIT -------------------- */
@media only screen and (max-width:1050px) and (orientation:portrait),
       only screen and (min-width:701px) and (max-width:899px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
    padding:74px clamp(42px,6vw,60px) 54px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image {
    max-width:980px !important;
    margin-top:36px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    max-width:980px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper {
    flex-basis:262px !important;
    width:262px !important;
    min-width:262px !important;
    max-width:262px !important;
    margin-top:34px !important;
  }
}

/* ----------------------------- PHONE ---------------------------- */
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
    padding:54px 22px 42px !important;
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:nowrap !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-text.sd-heading-module h1 {
    font-size:50px !important;
    line-height:1.02 !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image {
    width:100% !important;
    max-width:100% !important;
    margin:28px 0 0 !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    width:100% !important;
    max-width:100% !important;
    margin:7px 0 0 !important;
    padding-right:5px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
    font-size:13px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper {
    flex:0 0 auto !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:28px 0 0 !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper + .et_pb_button_module_wrapper {
    margin:12px 0 0 !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    max-width:100% !important;
    margin:38px 0 0 !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-credentials p {
    flex-direction:column !important;
    gap:10px !important;
  }
}


/* =========================================================
   v2.9.49 — Desktop hero visual-grid rebalance
   17 Aug 2026

   Keep the v2.9.48 content hierarchy (copy -> visual -> CTA -> credentials),
   but stop the banner behaving like a full-width dropped-in panel on desktop.
   The visual is now a deliberately inset, left-anchored proof element. Tablet
   portrait and phone retain the v2.9.48 treatment that already balanced well.
   ========================================================= */

/* Desktop: align the visual to the same left grid as the proposition, reduce
   its dominance, and tighten the vertical relationship between copy/image/CTA. */
@media only screen and (min-width:1051px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image {
    width:min(100%,1120px) !important;
    max-width:1120px !important;
    margin:26px 0 0 !important;
    align-self:flex-start !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    width:min(100%,1120px) !important;
    max-width:1120px !important;
    margin:6px 0 0 !important;
    padding-right:6px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper {
    margin-top:26px !important;
  }
}

/* Wide desktop: allow a little more scale without letting the banner become
   the visual centre of gravity. It remains firmly left-anchored. */
@media only screen and (min-width:1401px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    width:min(100%,1160px) !important;
    max-width:1160px !important;
  }
}

/* Intermediate desktop: slightly tighter proof-image footprint. */
@media only screen and (min-width:1051px) and (max-width:1400px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    width:min(100%,980px) !important;
    max-width:980px !important;
  }
}

/* Reduced desktop / iPad landscape gets the same grid logic, but not the more
   aggressive desktop reduction. Portrait tablet rules below are untouched. */
@media only screen and (min-width:900px) and (max-width:1050px) and (orientation:landscape) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    width:min(100%,840px) !important;
    max-width:840px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image {
    margin-top:26px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper {
    margin-top:26px !important;
  }
}


/* =========================================================
   v2.9.50 — Desktop CTA row containment fix
   17 Aug 2026

   v2.9.49 exposed a flex-wrap interaction on desktop: the visual caption and
   the first CTA could occupy the same flex line, leaving “How it works” on a
   separate row. Desktop now uses an explicit three-column CSS grid for the
   post-copy hero stack. Full-width content spans all columns; the two CTAs
   are deliberately placed side-by-side in columns 1 and 2.

   Tablet portrait and phone keep the existing v2.9.48 responsive flow.
   ========================================================= */

@media only screen and (min-width:1051px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
    display:grid !important;
    grid-template-columns:262px 262px minmax(0,1fr) !important;
    column-gap:14px !important;
    row-gap:0 !important;
    align-items:start !important;
    justify-items:start !important;
  }

  /* Every non-action module owns a complete grid row. */
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-text,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    grid-column:1 / -1 !important;
  }

  /* Keep the banner's deliberately reduced desktop footprint. */
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image {
    justify-self:start !important;
  }

  /* Caption occupies a full row, while its text remains aligned to the
     banner's right edge rather than the viewport edge. */
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    width:100% !important;
    max-width:none !important;
    margin:6px 0 0 !important;
    padding:0 !important;
    justify-self:stretch !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note p {
    width:min(100%,1120px) !important;
    max-width:1120px !important;
    padding-right:6px !important;
    box-sizing:border-box !important;
  }

  /* CTA 1 and CTA 2 are now one deliberate row. */
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper {
    grid-row:auto !important;
    width:262px !important;
    min-width:262px !important;
    max-width:262px !important;
    margin:26px 0 0 !important;
    justify-self:start !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .et_pb_button_module_wrapper + .et_pb_button_module_wrapper {
    margin-left:0 !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    width:100% !important;
    margin-top:44px !important;
  }
}

@media only screen and (min-width:1401px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note p {
    width:min(100%,1160px) !important;
    max-width:1160px !important;
  }
}

@media only screen and (min-width:1051px) and (max-width:1400px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note p {
    width:min(100%,980px) !important;
    max-width:980px !important;
  }
}

/* =========================================================
   v2.9.51 — Wide-screen Home hero balance
   17 Aug 2026

   Desktop and iPad landscape now use the available horizontal canvas rather
   than stopping the banner/credibility rule early and leaving a dead zone on
   the right. The complete hero composition is centred as one responsive grid,
   while the proposition, CTAs and credentials retain their left-hand anchor.

   Portrait iPad and phone are deliberately untouched because the v2.9.50
   portrait composition is already balanced.
   ========================================================= */

/* ---------------- DESKTOP / LARGE LAPTOP ---------------- */
@media only screen and (min-width:1051px) {
  /* Centre the complete hero composition. On ordinary desktop widths this is
     effectively full-width with balanced page gutters; on very wide screens
     the max-width prevents the hero from becoming excessively stretched. */
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
    width:100% !important;
    max-width:1920px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:clamp(64px,4.8vw,96px) !important;
    padding-right:clamp(64px,4.8vw,96px) !important;
  }

  /* The proof visual now occupies the same usable hero canvas instead of a
     narrow left-anchored strip. 1519px matches the source asset's native width;
     below that size it simply fills the available inner width. */
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image {
    width:100% !important;
    max-width:1519px !important;
    justify-self:start !important;
  }

  /* Keep the caption locked to the actual visual width. */
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    width:100% !important;
    max-width:none !important;
    justify-self:stretch !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note p {
    width:min(100%,1519px) !important;
    max-width:1519px !important;
    padding-right:6px !important;
    box-sizing:border-box !important;
  }

  /* The divider/credentials now close the same visual width as the hero rather
     than stopping early and accentuating unused space on the right. */
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    width:100% !important;
    max-width:1519px !important;
  }
}

/* On the most common 1051–1600px desktop/laptop range, the banner should fill
   the entire usable hero width. This is what removes the pronounced right-hand
   void seen in the live desktop capture. */
@media only screen and (min-width:1051px) and (max-width:1600px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    max-width:100% !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note p {
    width:100% !important;
    max-width:100% !important;
  }
}

/* ---------------- iPAD / TABLET LANDSCAPE ----------------
   A 1024px-class landscape viewport previously capped the banner at 840px,
   which left an obvious empty strip on the right. Fill the available inner
   width while retaining the existing text sizes, CTA geometry and vertical
   rhythm. */
@media only screen and (min-width:900px) and (max-width:1050px) and (orientation:landscape) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column {
    padding-left:38px !important;
    padding-right:38px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-image,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-credentials {
    width:100% !important;
    max-width:100% !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
    width:100% !important;
    max-width:100% !important;
    padding-right:4px !important;
    box-sizing:border-box !important;
  }
}



/* =========================================================
   v3.1.1 — Native Home polish after Divi 5 clean conversion
   17 Aug 2026

   1) Re-locks "Repeat the view. Reveal the change." to the visual rather
      than the outer hero canvas on desktop / landscape tablet.
   2) Restores deliberate breathing room between the Selected Sequences
      heading row and the project cards.
   3) Adds proper internal card padding now that Home is rendered by the
      clean shortcode-free native template rather than Divi 4 modules.
   ========================================================= */

/* --- Hero visual caption: pull slightly inward/up so it reads as part of
   the flight-path composition, not as a separate right-edge label. --- */
@media only screen and (min-width:1051px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note p {
    width:calc(100% - 34px) !important;
    max-width:calc(100% - 34px) !important;
    margin-left:0 !important;
    margin-right:auto !important;
    padding-right:0 !important;
    transform:translateY(-6px) !important;
  }
}

@media only screen and (min-width:900px) and (max-width:1050px) and (orientation:landscape) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    margin-top:2px !important;
  }
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
    width:calc(100% - 20px) !important;
    max-width:calc(100% - 20px) !important;
    padding-right:0 !important;
    transform:translateY(-4px) !important;
  }
}

/* --- Selected Sequences: native Home requires explicit row separation. --- */
body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-grid {
  margin-top:46px !important;
}

/* Card content used to inherit spacing from Divi modules. Native rendering
   needs real internal padding, so each text block now has room to breathe. */
body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card {
  padding-bottom:34px !important;
}

body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .sd-project-eyebrow {
  padding:24px 28px 0 !important;
  margin:0 !important;
}

body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .sd-project-heading {
  padding:0 28px !important;
  margin:5px 0 0 !important;
}

body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .sd-project-heading h3 {
  margin:0 !important;
  line-height:1.13 !important;
}

body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .sd-project-description {
  padding:0 28px !important;
  margin:18px 0 0 !important;
}

body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .sd-project-description p {
  min-height:0 !important;
  margin:0 !important;
  line-height:1.62 !important;
}

body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .et_pb_button_module_wrapper {
  margin:28px 28px 0 !important;
  padding:0 !important;
}

body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card .sd-button-link {
  margin-left:0 !important;
}

@media only screen and (min-width:701px) and (max-width:1366px) {
  body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-grid {
    margin-top:38px !important;
  }
}

@media only screen and (max-width:700px) {
  body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-grid {
    margin-top:30px !important;
  }
  body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .sd-project-eyebrow,
  body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .sd-project-heading,
  body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .sd-project-description {
    padding-left:22px !important;
    padding-right:22px !important;
  }
  body.skylinedrone-redesign.home #page-container .sd-projects-section .sd-project-card > .et_pb_button_module_wrapper {
    margin-left:22px !important;
    margin-right:22px !important;
  }
}

/* =========================================================
   v3.1.2 — Home hero tagline breathing room
   17 Aug 2026

   The native Divi 5 Home conversion exposed the right edge of the live
   "Repeat the view. Reveal the change." caption more strongly than the
   legacy Divi rendering. Keep the caption attached to the banner, but give
   both lines a deliberate inset from the visual/right page edge.

   Portrait iPad and mobile remain unchanged because those layouts were
   already balanced.
   ========================================================= */

/* Desktop / laptop: retain the established vertical position, but use the
   full caption track and create breathing room with an internal right inset.
   This moves the words left without making the available text box narrower. */
@media only screen and (min-width:1051px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note p {
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-right:clamp(50px,4vw,72px) !important;
    box-sizing:border-box !important;
    transform:translateY(-6px) !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p strong,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p span {
    display:block !important;
    white-space:nowrap !important;
  }
}

/* iPad / tablet landscape: a lighter inset keeps the caption visually tied
   to the smaller banner while avoiding the cramped right-edge treatment. */
@media only screen and (min-width:900px) and (max-width:1050px) and (orientation:landscape) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
    width:100% !important;
    max-width:100% !important;
    padding-right:32px !important;
    box-sizing:border-box !important;
    transform:translateY(-4px) !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p strong,
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p span {
    display:block !important;
    white-space:nowrap !important;
  }
}


/* =========================================================
   v3.1.3 — Home hero tagline vertical breathing room
   17 Aug 2026

   v3.1.2 corrected the right-edge inset, but the live caption still sat too
   tightly beneath the flight-path banner on wide layouts. Give the caption
   its own deliberate vertical gap while retaining its current horizontal
   alignment. Portrait iPad / mobile remain untouched.
   ========================================================= */

/* Desktop / laptop: create a visible pause between the bottom of the banner
   and the two-line caption. Remove the earlier negative Y translation. */
@media only screen and (min-width:1051px) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    margin-top:20px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
    transform:none !important;
  }
}

/* iPad / reduced desktop landscape: slightly tighter than desktop, but still
   clearly separated from the banner. */
@media only screen and (min-width:900px) and (max-width:1050px) and (orientation:landscape) {
  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-stack-column > .sd-hero-note {
    margin-top:14px !important;
  }

  body.skylinedrone-redesign.home #page-container .sd-home-hero .sd-hero-note p {
    transform:none !important;
  }
}

/* =========================================================
   v3.2.0 — Divi 5 Examples completeness + card breathing room
   17 Aug 2026

   The clean renderer initially reused the three-card Home subset. The live
   Time-shift Examples page requires the full six-project set. These rules
   also restore the internal spacing that the legacy Divi modules previously
   contributed so labels, headings, descriptions and CTAs do not sit directly
   against the image/card edges.
   ========================================================= */
body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card {
  padding-bottom:34px !important;
}
body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-eyebrow {
  padding:24px 28px 0 !important;
  margin:0 !important;
}
body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-heading {
  padding:0 28px !important;
  margin:5px 0 0 !important;
}
body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-heading h3 {
  margin:0 !important;
  line-height:1.13 !important;
}
body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-description {
  padding:0 28px !important;
  margin:18px 0 0 !important;
}
body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-description p {
  margin:0 !important;
  min-height:68px !important;
  line-height:1.62 !important;
}
body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .et_pb_button_module_wrapper {
  margin:28px 28px 0 !important;
  padding:0 !important;
}
body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card .sd-button-link {
  margin-left:0 !important;
}

@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-eyebrow,
  body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-heading,
  body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-description {
    padding-left:22px !important;
    padding-right:22px !important;
  }
  body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .sd-project-description p {
    min-height:0 !important;
  }
  body.skylinedrone-redesign #page-container .skylinedrone-native-examples .sd-project-card > .et_pb_button_module_wrapper {
    margin-left:22px !important;
    margin-right:22px !important;
  }
}


/* =========================================================
   v3.4.7 — Work-package Time-shift
   Keeps the specialist page within the approved design system while
   allowing the longer H1 and package descriptions to breathe.
   ========================================================= */
body.skylinedrone-redesign #page-container .sd-work-package-hero .sd-inner-hero-text h1 {
  max-width: 1040px;
  font-size: clamp(50px, 5vw, 72px) !important;
  line-height: 1.025 !important;
}
body.skylinedrone-redesign #page-container .sd-work-package-hero {
  background-color:#172126 !important;
  background-position:right center !important;
  background-repeat:no-repeat !important;
  background-size:contain !important;
}
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverable-card.sd-copy-module p {
  line-height: 1.65;
}
@media only screen and (max-width: 980px) {
  body.skylinedrone-redesign #page-container .sd-work-package-hero {
    min-height:0 !important;
    background-color:#172126 !important;
    background-blend-mode:normal !important;
    background-position:center calc(100% - 14px) !important;
    background-size:105% auto !important;
  }
  body.skylinedrone-redesign #page-container .sd-work-package-hero:before {
    background:linear-gradient(
      180deg,
      rgba(9,14,17,.99) 0%,
      rgba(9,14,17,.96) 47%,
      rgba(9,14,17,.72) 53%,
      rgba(9,14,17,.18) 60%,
      rgba(9,14,17,.02) 67%,
      rgba(9,14,17,0) 100%
    ) !important;
  }
  body.skylinedrone-redesign #page-container .sd-work-package-hero .sd-inner-hero-row {
    min-height:0 !important;
    align-items:flex-start !important;
    padding:52px clamp(32px,5.2vw,52px) clamp(500px,62vw,610px) !important;
  }
  body.skylinedrone-redesign #page-container .sd-work-package-hero .sd-inner-hero-text h1 {
    max-width:680px;
    font-size:clamp(42px,6vw,50px) !important;
    line-height:1.035 !important;
  }
  body.skylinedrone-redesign #page-container .sd-work-package-hero .sd-inner-hero-text.sd-copy-module p {
    max-width:620px;
  }
}
@media only screen and (max-width: 767px) {
  body.skylinedrone-redesign #page-container .sd-work-package-hero {
    background-position:64% calc(100% - 10px) !important;
    background-size:132% auto !important;
  }
  body.skylinedrone-redesign #page-container .sd-work-package-hero .sd-inner-hero-row {
    padding:48px 22px 360px !important;
  }
  body.skylinedrone-redesign #page-container .sd-work-package-hero .sd-inner-hero-text h1 {
    font-size:clamp(36px,10vw,44px) !important;
    line-height: 1.04 !important;
  }
}


/* =========================================================
   v3.4.8 — Specialist Work Package wireframe card graphics
   22 Aug 2026
   Preserves the current navigation build and adds the six
   approved transparent wireframe illustrations to the
   Work-package Time-shift application cards.
   ========================================================= */
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverables-row > .et_pb_column {
  position: relative;
  overflow: hidden;
}
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverable-card.sd-number-module::after {
  content: "";
  display: block;
  width: 100%;
  height: 206px;
  margin: 18px 0 4px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  opacity: .88;
  transform: scale(.985);
  transform-origin: center center;
  transition: opacity .22s ease, transform .22s ease;
  pointer-events: none;
}
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverables-row > .et_pb_column:hover .sd-deliverable-card.sd-number-module::after,
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverables-row > .et_pb_column:focus-within .sd-deliverable-card.sd-number-module::after {
  opacity: 1;
  transform: scale(1);
}
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverable-card.sd-heading-module h3 {
  margin: 18px 0 14px !important;
}

/* First card row: 01–03. */
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-heading-row + .sd-deliverables-row > .et_pb_column:nth-child(1) .sd-number-module::after { background-image:url('assets/images/work-package/01-slipform-jumpform-cores.webp'); }
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-heading-row + .sd-deliverables-row > .et_pb_column:nth-child(2) .sd-number-module::after { background-image:url('assets/images/work-package/02-facade-cladding.webp'); }
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-heading-row + .sd-deliverables-row > .et_pb_column:nth-child(3) .sd-number-module::after { background-image:url('assets/images/work-package/03-structural-steel.webp'); }

/* Second card row: 04–06. */
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-heading-row + .sd-deliverables-row + .sd-deliverables-row > .et_pb_column:nth-child(1) .sd-number-module::after { background-image:url('assets/images/work-package/04-rc-frame-precast.webp'); }
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-heading-row + .sd-deliverables-row + .sd-deliverables-row > .et_pb_column:nth-child(2) .sd-number-module::after { background-image:url('assets/images/work-package/05-modular-installation.webp'); }
body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-heading-row + .sd-deliverables-row + .sd-deliverables-row > .et_pb_column:nth-child(3) .sd-number-module::after { background-image:url('assets/images/work-package/06-glazing-envelope.webp'); }

@media only screen and (min-width:701px) and (max-width:1200px) {
  body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverable-card.sd-number-module::after {
    height: 187px;
    margin-top: 16px;
  }
}
@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverables-row > .et_pb_column {
    padding: 28px 28px 32px !important;
  }
  body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverable-card.sd-number-module::after {
    height: clamp(209px,46.8vw,276px);
    margin: 18px 0 2px;
  }
  body.skylinedrone-redesign #page-container .sd-work-package-applications .sd-deliverable-card.sd-heading-module h3 {
    margin-top: 16px !important;
  }
}


/* =========================================================
   v3.4.10 — Main Time-shift six-stage wireframe cards
   22 Aug 2026

   IMPORTANT SCOPE:
   - Built directly from v3.4.8.
   - Applies ONLY when body has .skylinedrone-timeshift-page.
   - Does NOT alter .sd-work-package-applications or the
     Work-package Time-shift page.
   ========================================================= */
body.skylinedrone-timeshift-page #page-container
.sd-deliverables-section:not(.sd-work-package-applications)
.sd-deliverables-row > .et_pb_column {
  position:relative;
  overflow:hidden;
}

body.skylinedrone-timeshift-page #page-container
.sd-deliverables-section:not(.sd-work-package-applications)
.sd-deliverable-card.sd-number-module::after {
  content:"";
  display:block;
  width:100%;
  height:202px;
  margin:16px 0 2px;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:contain;
  opacity:.76;
  filter:saturate(.82) brightness(.94);
  pointer-events:none;
}

body.skylinedrone-timeshift-page #page-container
.sd-deliverables-section:not(.sd-work-package-applications)
.sd-deliverable-card.sd-heading-module h3 {
  margin:18px 0 14px !important;
}

/* Row 1 — 01 Groundworks / 02 Frame begins / 03 Structural rise */
body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-heading-row + .sd-deliverables-row > .et_pb_column:nth-child(1) .sd-number-module::after { background-image:url('assets/images/time-shift-stages/01-groundworks.webp'); }
body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-heading-row + .sd-deliverables-row > .et_pb_column:nth-child(2) .sd-number-module::after { background-image:url('assets/images/time-shift-stages/02-frame-begins.webp'); }
body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-heading-row + .sd-deliverables-row > .et_pb_column:nth-child(3) .sd-number-module::after { background-image:url('assets/images/time-shift-stages/03-structural-rise.webp'); }

/* Row 2 — 04 Enclosure / 05 Topping out / 06 Completion */
body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-heading-row + .sd-deliverables-row + .sd-deliverables-row > .et_pb_column:nth-child(1) .sd-number-module::after { background-image:url('assets/images/time-shift-stages/04-enclosure.webp'); }
body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-heading-row + .sd-deliverables-row + .sd-deliverables-row > .et_pb_column:nth-child(2) .sd-number-module::after { background-image:url('assets/images/time-shift-stages/05-topping-out.webp'); }
body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-heading-row + .sd-deliverables-row + .sd-deliverables-row > .et_pb_column:nth-child(3) .sd-number-module::after { background-image:url('assets/images/time-shift-stages/06-completion.webp'); }

@media only screen and (min-width:701px) and (max-width:1200px) {
  body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-deliverable-card.sd-number-module::after {
    height:185px;
    margin-top:15px;
  }
}

@media only screen and (max-width:700px) {
  body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-deliverables-row > .et_pb_column {
    padding:28px 28px 32px !important;
  }
  body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-deliverable-card.sd-number-module::after {
    height:clamp(204px,48vw,266px);
    margin:16px 0 0;
  }
  body.skylinedrone-timeshift-page #page-container .sd-deliverables-section:not(.sd-work-package-applications) .sd-deliverable-card.sd-heading-module h3 {
    margin-top:14px !important;
  }
}


/* =========================================================
   v3.4.11 — Card wireframes +20%
   22 Aug 2026
   Enlarges only the existing six-card wireframe image areas on:
   1) main Time-shift page, and 2) Work-package Time-shift page.
   No page content, image assignments, navigation or card copy changed.
   ========================================================= */


/* =========================================================
   v3.4.12 — Work-package card wireframe visibility
   23 Aug 2026

   SCOPE:
   - Work-package Time-shift six application cards ONLY.
   - Preserves the six original v3.4.11 image assets, dimensions,
     assignments, card structure, spacing and 20% size increase.
   - Raises opacity and luminance/contrast so the approved
     wireframe artwork reads more clearly against the dark cards.
   ========================================================= */
body.skylinedrone-redesign #page-container
.sd-work-package-applications
.sd-deliverable-card.sd-number-module::after {
  opacity:1;
  filter:brightness(1.42) contrast(1.08) saturate(1.08);
}

body.skylinedrone-redesign #page-container
.sd-work-package-applications
.sd-deliverables-row > .et_pb_column:hover
.sd-deliverable-card.sd-number-module::after,
body.skylinedrone-redesign #page-container
.sd-work-package-applications
.sd-deliverables-row > .et_pb_column:focus-within
.sd-deliverable-card.sd-number-module::after {
  opacity:1;
  filter:brightness(1.50) contrast(1.10) saturate(1.10);
}


/* =========================================================
   v3.4.13 — Wat Tyler matched-viewpoint proof
   23 Aug 2026

   SCOPE:
   - New "See the change" proof section on Work-package Time-shift only.
   - Sits immediately beneath the six specialist-package cards.
   - Uses a native Divi 5 video module; no Divi 4 legacy shortcodes.
   ========================================================= */
body.skylinedrone-redesign #page-container .sd-work-package-change-demo {
  background:#f3f1ea !important;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-row {
  max-width:1380px !important;
  margin:0 auto !important;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-eyebrow {
  margin-bottom:18px !important;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-eyebrow p {
  color:#2f7774 !important;
  letter-spacing:2px;
  text-transform:uppercase;
  font-weight:600;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-heading h2 {
  color:#0d1215 !important;
  max-width:900px;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-intro {
  margin-top:22px !important;
  max-width:760px;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-intro p {
  color:#4b575b !important;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-intro strong {
  color:#0d1215;
  font-weight:600;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-video {
  margin-top:42px !important;
  width:100%;
  overflow:hidden;
  background:#0d1215;
  box-shadow:0 24px 55px rgba(13,18,21,.16);
}

body.skylinedrone-redesign #page-container .sd-work-package-change-video iframe,
body.skylinedrone-redesign #page-container .sd-work-package-change-video video {
  width:100% !important;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-explanation {
  max-width:940px;
  margin-top:38px !important;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-explanation p {
  color:#4b575b !important;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-explanation p+p {
  margin-top:18px !important;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-explanation .sd-change-takeaway {
  color:#0d1215 !important;
  font-size:clamp(22px,2vw,30px);
  line-height:1.4;
  font-weight:600;
  max-width:900px;
}

body.skylinedrone-redesign #page-container .sd-work-package-change-explanation .sd-change-location {
  color:#647276 !important;
  font-size:12px;
  line-height:1.5;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:600;
}

@media only screen and (max-width:700px) {
  body.skylinedrone-redesign #page-container .sd-work-package-change-video {
    margin-top:30px !important;
    box-shadow:0 16px 34px rgba(13,18,21,.14);
  }
  body.skylinedrone-redesign #page-container .sd-work-package-change-explanation {
    margin-top:28px !important;
  }
}

/* v3.4.15 — concise SEO support copy inserted into existing native Divi 5 text modules. */
.sd-seo-support-copy { margin-top: 1em; }
