
:root{
--navy:#102447;--navy2:#173b72;--blue:#0755ff;--gold:#efb52d;--gold2:#ffcf63;
--ink:#172b4d;--muted:#536783;--paper:#f2f7ff;--line:#d8e4f5;--white:#fff;
--sky:#e8f1ff;--royal:#0a49d6;--soft-gold:#fff4d4;--mint:#e8f8f2
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);font:16px/1.65 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff}
a{color:#064bdc;text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
h1,h2,h3,h4{line-height:1.15;letter-spacing:-.025em;margin-top:0}
h1{font-size:clamp(2.3rem,5vw,4.5rem)}h2{font-size:clamp(1.65rem,3vw,2.5rem)}h3{font-size:1.3rem}
p{margin:.65rem 0 1rem}
.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.site-header{position:absolute;top:0;left:0;right:0;z-index:20;color:#102447;background:rgba(239,246,255,.97);border-bottom:3px solid #efb52d;box-shadow:0 5px 24px rgba(16,36,71,.10);backdrop-filter:blur(10px)}
.nav-row{display:flex;align-items:center;gap:26px;min-height:92px}
.brand{display:block;flex:0 1 310px;min-width:180px}
.brand img{display:block;width:100%;max-height:70px;object-fit:contain;object-position:left center;background:transparent;filter:drop-shadow(0 1px 0 rgba(255,255,255,.4))}
.nav-links{display:flex;align-items:center;justify-content:flex-end;gap:clamp(12px,1.8vw,25px);margin-left:auto}
.nav-links a{color:#17345e;font-size:.86rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:#b87900}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 21px;border-radius:9px;font-weight:800;line-height:1.25;text-decoration:none!important;border:1px solid transparent;transition:transform .18s ease,box-shadow .18s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(0,0,0,.15)}
.btn-gold{color:#071b3a;background:linear-gradient(135deg,var(--gold),var(--gold2));border-color:#e7a817}
.btn-blue{color:#fff;background:#0755ff}
.btn-outline{color:var(--navy);background:rgba(255,255,255,.9);border-color:var(--navy)}
.nav-quote{white-space:nowrap;padding:13px 16px;font-size:.86rem}
.mobile-toggle{display:none;background:#fff;border:1px solid #b9cce8;color:#102447;border-radius:8px;padding:9px 12px;font-weight:700}
.hero{min-height:700px;padding:142px 0 108px;background:radial-gradient(ellipse at 52% 45%,#16365e 0%,#06152f 60%);position:relative;overflow:hidden;isolation:isolate}
.hero:before{content:"";position:absolute;left:0;top:76px;bottom:0;width:65%;background:url('../img/kingzmedia-lion-home.png') center 42%/cover no-repeat;z-index:-2;mask-image:linear-gradient(to right,#000 0%,#000 58%,rgba(0,0,0,.82) 72%,transparent 100%);-webkit-mask-image:linear-gradient(to right,#000 0%,#000 58%,rgba(0,0,0,.82) 72%,transparent 100%)}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,21,47,.04) 0%,rgba(6,21,47,.08) 35%,rgba(6,21,47,.42) 50%,rgba(6,21,47,.86) 66%,#06152f 82%);z-index:-1}
.hero-content{width:min(1240px,calc(100% - 40px));min-height:480px;margin:auto;display:flex;align-items:center;justify-content:flex-end}
.hero-copy{width:57%;max-width:700px;text-align:center;color:#fff;padding:18px 10px;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.hero-logo{display:block;width:min(100%,490px);max-height:120px;object-fit:contain;margin:0 auto 16px;filter:drop-shadow(0 3px 9px rgba(0,0,0,.12))}
.eyebrow{font-size:.82rem;font-weight:850;letter-spacing:.2em;text-transform:uppercase;color:#bd7f00}
.hero .eyebrow{color:var(--gold2);margin:0 0 14px}
.hero h1{font-size:clamp(2.45rem,4vw,4.1rem);font-weight:900;text-transform:uppercase;line-height:1.05;letter-spacing:-.045em;margin:0 0 18px;color:#fff}
.hero h1 span{display:inline;color:var(--gold)}
.hero p{font-size:clamp(1.02rem,1.5vw,1.25rem);line-height:1.5;color:#f0f4ff;font-weight:600;max-width:660px;margin:0 auto 24px}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.service-strip{position:relative;z-index:2;margin-top:-72px;padding-bottom:15px}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.service-card{background:rgba(4,13,29,.96);border:1px solid var(--gold);border-radius:13px;padding:22px 18px;text-align:center;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.22)}
.service-icon{color:var(--gold);font-size:2.2rem;line-height:1.2;margin-bottom:12px}
.service-card h3{font-size:1.02rem;text-transform:uppercase;margin:0 0 8px;color:#fff}
.service-card p{font-size:.9rem;line-height:1.45;color:#dce4f3;margin:0}
.section{padding:76px 0}
.section-soft{background:var(--paper)}
.section-head{text-align:center;max-width:760px;margin:0 auto 34px}
.section-head .eyebrow{margin-bottom:10px}
.section-head p{color:var(--muted)}
.two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.check-list{padding-left:1.25rem}.check-list li{margin:.45rem 0}
.feature-panel{padding:34px;background:linear-gradient(145deg,var(--navy),var(--navy2));border-radius:18px;color:#fff;box-shadow:0 15px 35px rgba(6,21,47,.15)}
.feature-panel h3{font-size:1.7rem}.feature-panel p{color:#e0e8f8}.feature-panel .check-list{color:#f4f7ff}
.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.content-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:26px;box-shadow:0 8px 24px rgba(11,35,71,.045)}
.content-card h3{margin:8px 0 10px}.content-card p{color:var(--muted)}
.content-card>a{font-weight:800}.card-kicker{font-size:.78rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:#a76c00}
.cta-band{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:36px 40px;background:linear-gradient(120deg,var(--navy),#10356a);border:1px solid rgba(239,181,45,.65);border-radius:18px;color:#fff}
.cta-band h2{margin-bottom:8px}.cta-band p{color:#e1e9f8;margin-bottom:0}
.page-hero{padding:145px 0 55px;background:linear-gradient(120deg,var(--navy),var(--navy2));color:#fff}
.page-hero h1{margin-bottom:12px}.page-hero p{max-width:780px;color:#e0e8f8}
.page-content{padding:55px 0 80px}.page-content h2{margin-top:1.6em}.page-content p,.page-content li{max-width:900px}
.article-wrap{padding:130px 0 75px}.article-content{max-width:850px;margin:auto}.article-content h1{font-size:clamp(2rem,4vw,3.4rem)}.article-content h2{margin-top:1.7em}.article-meta{color:var(--muted);font-size:.9rem}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.form-panel{max-width:850px;margin:0 auto;padding:30px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(11,35,71,.06)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}
.field label{font-weight:750}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #cbd4e2;border-radius:8px;font:inherit;background:#fff;color:var(--ink)}
.field textarea{min-height:145px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(7,85,255,.16);border-color:#0755ff}
.site-footer{background:#e6efff;color:#102447;padding:52px 0 0;border-top:4px solid #efb52d}
.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1.1fr;gap:38px;padding-bottom:35px}
.footer-brand{display:block;width:260px;max-width:100%;max-height:85px;object-fit:contain;object-position:left center;margin-bottom:16px;background:transparent}
.site-footer p{color:#405675}.site-footer h3{color:#102447;font-size:1.05rem}.footer-links{display:grid;gap:7px}.footer-links a{color:#173b72;font-size:.92rem}.footer-links a:hover{color:#a86d00}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(16,36,71,.18);padding:16px 0;font-size:.88rem}.footer-bottom p{margin:0;color:#405675}
@media(max-width:1050px){.nav-row{gap:15px}.brand{flex-basis:230px}.nav-links{gap:13px}.nav-links a{font-size:.78rem}.nav-quote{font-size:.78rem;padding:11px 12px}.hero-copy{width:58%}.service-grid{gap:12px}.service-card{padding:18px 12px}}
@media(max-width:800px){.nav-row{min-height:78px;flex-wrap:wrap;padding:10px 0}.brand{flex:1 1 220px}.brand img{max-height:56px}.mobile-toggle{display:block;margin-left:auto}.nav-quote{display:none}.nav-links{display:none;order:4;flex:1 0 100%;margin:0;padding:12px 0 16px;align-items:stretch;flex-direction:column;gap:0}.nav-links.open{display:flex}.nav-links a{padding:11px 4px;border-top:1px solid rgba(255,255,255,.1);font-size:.9rem}.hero{padding:100px 0 110px;min-height:790px}.hero:before{width:100%;height:58%;bottom:auto;background-position:center 16%;background-size:cover;mask-image:linear-gradient(to bottom,#000 0%,#000 58%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 58%,transparent 100%)}.hero:after{background:linear-gradient(180deg,rgba(6,21,47,.02) 0%,rgba(6,21,47,.06) 30%,rgba(6,21,47,.82) 58%,#06152f 78%,#06152f 100%)}.hero-content{min-height:610px;align-items:flex-end;justify-content:center}.hero-copy{width:100%;max-width:640px;padding:25px 18px;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;text-shadow:0 2px 12px rgba(0,0,0,.4)}.hero-logo{max-width:330px;max-height:90px}.hero h1{font-size:clamp(2.3rem,9vw,3.5rem)}.service-strip{margin-top:-65px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr;gap:28px}.cards-3,.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.cta-band{align-items:flex-start;flex-direction:column;padding:28px}}
@media(max-width:520px){.container{width:min(100% - 28px,1160px)}.hero{min-height:760px;padding:92px 0 100px}.hero-content{width:calc(100% - 28px);min-height:600px}.hero-copy{padding:20px 14px}.hero-logo{max-width:280px}.hero h1{font-size:2.35rem}.hero p{font-size:1rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.service-grid,.cards-3,.article-grid,.footer-grid{grid-template-columns:1fr}.service-strip{margin-top:-55px}.section{padding:54px 0}.page-hero{padding:120px 0 40px}.form-panel{padding:20px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column}.cta-band{padding:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Blog listing alignment repair */
.article-grid{align-items:stretch;grid-auto-rows:1fr}
.article-card{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;height:100%;padding:26px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 8px 24px rgba(11,35,71,.055);overflow-wrap:anywhere}
.article-card .card-kicker{margin-bottom:12px}
.article-card h2{font-size:1.28rem;line-height:1.3;margin:0 0 14px}
.article-card h2 a{color:var(--navy);text-decoration:none}
.article-card h2 a:hover{color:var(--blue)}
.article-card p{color:var(--muted);line-height:1.65;margin:0 0 18px}
.article-card>a:last-child{display:inline-flex;margin-top:auto;padding-top:8px;font-weight:800;color:#064bdc}
.breadcrumbs{font-size:.88rem;opacity:.8;margin-bottom:10px}
@media(max-width:800px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}.article-card{padding:21px}.article-card h2{font-size:1.15rem}}
@media(max-width:520px){.article-grid{grid-template-columns:1fr}.article-card{padding:22px}}

/* Article detail layout: one centered reading column, consistent heading and paragraph alignment */
.article-wrap{padding:130px 0 80px}
.article-content{width:min(850px,calc(100% - 40px));max-width:850px;margin:0 auto;text-align:left}
.article-content .eyebrow,.article-content .article-meta{text-align:left}
.article-content h1{font-size:clamp(2.1rem,4vw,3.6rem);line-height:1.12;max-width:850px;margin:0 0 26px;overflow-wrap:break-word}
.article-content .article-lead{font-size:1.12rem;line-height:1.8;color:#3f4d65;margin:0 0 32px}
.article-content p,.article-content li{font-size:1.03rem;line-height:1.85;color:#263650}
.article-content h2{font-size:clamp(1.55rem,3vw,2.1rem);line-height:1.25;margin:2em 0 .65em}
.article-content h3{margin:1.5em 0 .5em}
.article-content ul,.article-content ol{padding-left:1.35rem}
.article-content>*{max-width:100%}
.article-content .article-lead + .article-lead{display:none}
@media(max-width:800px){.article-wrap{padding:115px 0 60px}.article-content{width:calc(100% - 36px)}.article-content h1{font-size:clamp(2rem,7vw,3rem)}}

/* V9 visual corrections */
.article-grid{max-width:1120px;margin-left:auto;margin-right:auto;justify-items:stretch;align-items:stretch}
.article-card h2,.article-card p,.article-card .card-kicker{text-align:center;width:100%}
.article-card>a:last-child{align-self:center}
@media(max-width:800px){
 .hero:before{top:78px;width:100%;height:55%;bottom:auto;background-position:center 12%;background-size:cover}
 .hero:after{background:linear-gradient(180deg,rgba(6,21,47,.02) 0%,rgba(6,21,47,.10) 30%,rgba(6,21,47,.82) 58%,#06152f 78%,#06152f 100%)}
 .hero{padding-top:120px}
 .nav-links a{color:#102447}
}

/* V10: Homepage hero and all blog detail pages */
.hero:before{top:76px;background-position:center 12%}
.hero .hero-logo,.hero .hero-brand,.hero .hero-mark{display:none!important}
.hero-copy .brand,.hero-copy .logo,.hero-copy img{display:none!important}

/* Article pages: constrain the entire content area, not only the inner body column */
body:has(.article-content) main,
body:has(.article-content) .page-main,
body:has(.article-content) .article-wrap,
body:has(.article-content) main.container{
  width:100%;max-width:none;margin:0 auto;padding-left:24px;padding-right:24px;
}
body:has(.article-content) .article-content{
  width:min(850px,100%)!important;max-width:850px!important;margin:0 auto!important;
  text-align:left!important;display:block!important;
}
body:has(.article-content) .article-content h1,
body:has(.article-content) .article-content h2,
body:has(.article-content) .article-content h3,
body:has(.article-content) .article-content p,
body:has(.article-content) .article-content ul,
body:has(.article-content) .article-content ol{
  width:100%;max-width:100%;margin-left:0;margin-right:0;
}
body:has(.article-content) .article-content .article-lead{margin-bottom:28px}
body:has(.article-content) .article-content .article-lead + .article-lead{display:none!important}

/* Legacy detail pages with intro outside article-content: center and constrain the full article shell */
.article-wrap .container,
.article-page .container,
.blog-article .container{width:min(900px,calc(100% - 40px));max-width:900px;margin-left:auto;margin-right:auto}
.article-wrap h1,.article-page h1,.blog-article h1{max-width:900px;margin-left:auto;margin-right:auto}
.article-wrap p,.article-page p,.blog-article p{max-width:850px;margin-left:auto;margin-right:auto;line-height:1.85}
@media(max-width:800px){
  body:has(.article-content) main,
  body:has(.article-content) .page-main,
  body:has(.article-content) .article-wrap{padding-left:18px;padding-right:18px}
}

/* V11: final targeted correction from live screenshots */
.hero:before{
  top:0!important;
  background-image:url('../img/kingzmedia-lion-background.jpg')!important;
  background-position:center 10%!important;
  background-size:cover!important;
}
.hero .hero-logo,.hero .hero-brand,.hero .hero-mark,.hero-copy img{display:none!important}

/* Individual blog article pages: center every sibling element, not just the article body */
main.article-wrap{
  width:100%!important;max-width:none!important;
  margin:0 auto!important;
  padding:138px 22px 76px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;
}
main.article-wrap > .eyebrow,
main.article-wrap > h1,
main.article-wrap > .article-lead,
main.article-wrap > .article-content,
main.article-wrap > .article-cta,
main.article-wrap > p{
  width:min(850px,100%)!important;
  max-width:850px!important;
  margin-left:auto!important;margin-right:auto!important;
  align-self:center!important;
}
main.article-wrap > .eyebrow{margin-bottom:12px!important;text-align:left!important}
main.article-wrap > h1{font-size:clamp(2.1rem,4vw,3.4rem)!important;line-height:1.12!important;margin-top:0!important;margin-bottom:24px!important;text-align:left!important;overflow-wrap:anywhere}
main.article-wrap > .article-lead{font-size:1.12rem!important;line-height:1.8!important;margin-top:0!important;margin-bottom:28px!important;text-align:left!important}
main.article-wrap > .article-content{display:block!important;margin-top:0!important;text-align:left!important}
main.article-wrap > .article-content > p:first-child{display:none!important}
main.article-wrap > .article-content h2,
main.article-wrap > .article-content h3,
main.article-wrap > .article-content p,
main.article-wrap > .article-content ul,
main.article-wrap > .article-content ol{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}
main.article-wrap > .article-cta{
  box-sizing:border-box!important;margin-top:38px!important;padding:28px!important;
  border:1px solid var(--line);border-radius:14px;background:var(--paper);
  text-align:center!important;
}
main.article-wrap > .article-cta h2,
main.article-wrap > .article-cta p{margin-left:auto!important;margin-right:auto!important;text-align:center!important}
main.article-wrap > p:last-child{text-align:center!important;margin-top:22px!important}
@media(max-width:800px){
  main.article-wrap{padding:116px 18px 55px!important}
  main.article-wrap > h1{font-size:clamp(1.9rem,7vw,2.8rem)!important}
}

/* V13: site-wide color refinement */
body{background:#fff;color:var(--ink)}
a{color:#064bdc}
.section-soft{background:linear-gradient(135deg,#f1f6ff 0%,#fff8e7 100%)}
.section:nth-of-type(even){background-color:#f7faff}
.content-card{border-color:#d8e4f5;box-shadow:0 10px 28px rgba(16,55,112,.07)}
.content-card:nth-child(3n+1){border-top:3px solid #0755ff}
.content-card:nth-child(3n+2){border-top:3px solid #efb52d}
.content-card:nth-child(3n){border-top:3px solid #73a6ff}
.card-kicker,.eyebrow{color:#a66b00}
.page-hero{background:linear-gradient(120deg,#e8f1ff 0%,#fff5d8 100%);color:#102447;border-bottom:3px solid #efb52d}
.page-hero p{color:#405675}
.page-hero .eyebrow{color:#a66b00}
.form-panel{border-color:#d4e2f6;background:linear-gradient(135deg,#fff 0%,#f4f8ff 100%)}
.field input,.field select,.field textarea{border-color:#c4d4eb}
.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(7,85,255,.15);border-color:#0755ff}
.cta-band{background:linear-gradient(120deg,#0c3e99,#0755ff);border-color:#efb52d}
.article-card{border-color:#d8e4f5}
.article-card:nth-child(3n+1){border-top:3px solid #0755ff}
.article-card:nth-child(3n+2){border-top:3px solid #efb52d}
.article-card:nth-child(3n){border-top:3px solid #73a6ff}
.site-footer .footer-brand{background:transparent;filter:none}
.site-header .brand img{background:transparent;filter:none}
.btn-gold{background:linear-gradient(135deg,#efb52d,#ffcf63);color:#102447}
.btn-blue{background:linear-gradient(135deg,#0755ff,#397cff)}
@media(max-width:800px){
 .site-header{background:rgba(239,246,255,.99)}
 .nav-links{background:#f4f8ff;border:1px solid #d8e4f5;border-radius:10px;padding:8px 12px}
 .nav-links a{color:#17345e}
}

/* User-supplied lion photography: limited to Home, About, Services, Portfolio and Blog index */
.brand-photo{display:block;width:100%;height:auto;max-height:480px;object-fit:cover;border-radius:18px;box-shadow:0 14px 34px rgba(6,21,47,.14);margin:0 auto 28px}
.brand-photo-wide{width:100%;height:clamp(240px,38vw,430px);object-fit:cover;object-position:center 45%;border-radius:18px;display:block;margin:0 auto 30px;box-shadow:0 14px 34px rgba(6,21,47,.14)}
.page-hero-photo{padding-top:24px}
@media(max-width:800px){.brand-photo-wide{height:280px}.brand-photo{max-height:340px}}



/* V17: preserve the original hero design and place the supplied home photo beneath it */
.home-photo-after-hero{padding:28px 0 8px;background:var(--page-bg,#fff)}
.home-photo-after-hero .container{max-width:1180px;margin:0 auto;padding-left:20px;padding-right:20px}
.home-supporting-photo{display:block;width:100%;height:clamp(240px,38vw,440px);object-fit:cover;object-position:center 42%;border-radius:18px;box-shadow:0 12px 34px rgba(6,21,47,.12)}
@media(max-width:640px){.home-photo-after-hero{padding:18px 0 4px}.home-photo-after-hero .container{padding-left:16px;padding-right:16px}.home-supporting-photo{height:260px;border-radius:12px;object-position:center 38%}}
