/*
Theme Name:  IoT UK Child
Description: IoT UK child of GeneratePress. v4.3.
Template:    generatepress
Author:      Peter Green
Version:     4.3.0
Text Domain: iotuk-child
*/

:root {
  --blue:#0052FF; --navy:#1A1F2B; --teal:#00F5D4;
  --ghost:#F8FAFC; --body:#111827; --slate:#64748B;
  --border:#E2E8F0; --white:#ffffff; --blue-h:#0041cc;
  --fh:'Plus Jakarta Sans',sans-serif; --fb:'Inter',sans-serif;
  --max:1140px; --r:6px; --t:180ms ease;
}

*,*::before,*::after{box-sizing:border-box}
body{font-family:var(--fb)!important;font-size:16px!important;line-height:1.7!important;color:var(--body)!important;background:#fff!important;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:var(--fh)!important;color:var(--navy);line-height:1.2;letter-spacing:-.01em}
h1{font-size:2.5rem!important;font-weight:700!important}
h2{font-size:2rem!important;font-weight:700!important}
h3{font-size:1.375rem!important;font-weight:600!important}
h4{font-size:1.125rem!important;font-weight:600!important}
p{margin-bottom:1rem}p:last-child{margin-bottom:0}
a{color:var(--blue);text-decoration:none;transition:color var(--t)}
a:hover{color:var(--blue-h)}

/* Single post content — constrain width within the grid column */
.single .entry-content,
.single .inside-article {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 32px 24px 48px !important;
}
/* Single post hero block — allow full column width */
.single .inside-article .wp-block-html,
.single .entry-content .wp-block-html {
  margin: 0 -24px !important;
  padding: 0 !important;
}

/* Hide GP post meta (date/author) on single posts - hero block handles this */
.single .entry-meta,.single .entry-header .entry-meta{display:none!important}

/* ── Kill GP chrome ───────────────────────────── */
.entry-title{display:none!important}
.widget-area,.sidebar-primary,.secondary-navigation{display:none!important}
.content-area{width:100%!important;float:none!important;max-width:none!important}
.inside-site-content,.site-content{max-width:none!important;padding:0!important}
.inside-article,.entry-content{padding:0!important;margin:0!important}
.grid-container{max-width:none!important;padding:0!important}
.separate-containers .inside-article,.one-container .inside-article{border-radius:0!important;box-shadow:none!important}
.post,.page{margin:0!important}
.wp-block-html{margin:0!important}

/* ── Sticky white header ──────────────────────── */
.site-header{
  position:sticky!important;top:0!important;z-index:1000!important;
  background:#fff!important;border-bottom:1px solid #E2E8F0!important;
  box-shadow:0 1px 8px rgba(0,0,0,.06)!important;padding:0!important;
}
.admin-bar .site-header{top:32px!important}
@media screen and (max-width:782px){.admin-bar .site-header{top:46px!important}}
.site-header .inside-header{
  background:#fff!important;border-bottom:none!important;
  max-width:var(--max)!important;margin:0 auto!important;padding:0 24px!important;
  min-height:64px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
}
.site-header .custom-logo,.site-header .site-logo img{max-height:38px!important;width:auto!important;display:block!important}
.site-header .site-branding{display:flex;align-items:center}
.site-header .site-title,.main-title{display:none!important}
.site-header .site-description{display:none!important}

/* ── Nav ──────────────────────────────────────── */
.nav-primary,.main-navigation{background:#fff!important}
.main-navigation .inside-navigation{max-width:var(--max)!important;margin:0 auto!important;padding:0 24px!important}
.main-navigation a,.nav-primary .main-nav ul li a{
  font-family:var(--fh)!important;font-size:.875rem!important;font-weight:600!important;
  color:#1A1F2B!important;padding:0 .875rem!important;line-height:52px!important;
  transition:color var(--t)!important;background:transparent!important;
}
.main-navigation a:hover,.main-navigation .current-menu-item>a,.main-navigation .current-menu-ancestor>a{color:#0052FF!important;background:transparent!important}
.main-navigation .current-menu-item>a{box-shadow:inset 0 -3px 0 #0052FF!important}
.main-navigation ul ul{
  background:#fff!important;border:1px solid #E2E8F0!important;border-top:2px solid #0052FF!important;
  border-radius:0 0 8px 8px!important;box-shadow:0 12px 32px rgba(0,0,0,.1)!important;min-width:230px!important;padding:.5rem 0!important;
}
.main-navigation ul ul a{font-size:.8125rem!important;line-height:1.4!important;padding:.625rem 1.25rem!important;color:#374151!important;border-bottom:1px solid #F1F5F9!important;box-shadow:none!important}
.main-navigation ul ul li:last-child a{border-bottom:none!important}
.main-navigation ul ul a:hover{color:#0052FF!important;background:#F8FAFC!important}
button.menu-toggle,.mobile-menu-control-wrapper .menu-toggle{
  color:#1A1F2B!important;background:transparent!important;border:1px solid #E2E8F0!important;
  border-radius:var(--r)!important;padding:.4rem .75rem!important;
  font-family:var(--fh)!important;font-size:.8125rem!important;font-weight:600!important;cursor:pointer!important;
}
button.menu-toggle:hover{background:#F8FAFC!important;border-color:#0052FF!important;color:#0052FF!important}
@media(max-width:768px){
  .main-navigation .main-nav{background:#fff!important;border-top:1px solid #E2E8F0!important}
  .main-navigation .main-nav ul li a{color:#1A1F2B!important;border-bottom:1px solid #F1F5F9!important;line-height:1.4!important;padding:.75rem 1rem!important}
  .main-navigation .main-nav ul li a:hover{color:#0052FF!important;background:#F8FAFC!important}
}

/* ── Archive two-column (JS creates #iotuk-archive-wrap) ──── */
#iotuk-archive-wrap{
  max-width:var(--max);margin:0 auto;padding:40px 24px 64px;
  display:grid;grid-template-columns:1fr 280px;gap:36px;align-items:start;
}
#iotuk-archive-wrap .content-area{min-width:0;width:100%!important}
@media(max-width:900px){#iotuk-archive-wrap{grid-template-columns:1fr}}
@media(max-width:600px){#iotuk-archive-wrap{padding:24px 16px 48px}}

/* ── Card grid ── */
.blog .site-main,.archive .site-main{
  display:grid!important;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;
  gap:24px!important;align-items:start!important;
}

/* Individual card */
.blog .site-main>article,.archive .site-main>article{
  background:#fff!important;border:1px solid #E2E8F0!important;border-radius:10px!important;
  overflow:hidden!important;box-shadow:0 1px 4px rgba(0,0,0,.05)!important;
  display:flex!important;flex-direction:column!important;margin:0!important;padding:0!important;
  transition:box-shadow 180ms ease,transform 180ms ease!important;
}
.blog .site-main>article:hover,.archive .site-main>article:hover{
  box-shadow:0 8px 24px rgba(0,0,0,.1)!important;transform:translateY(-2px)!important;
}
.blog .site-main>article .inside-article,.archive .site-main>article .inside-article{
  padding:0!important;display:flex!important;flex-direction:column!important;flex:1!important;
}

/* Card thumbnail - full width, no gaps */
.iotuk-card-thumb{display:block!important;width:100%!important;aspect-ratio:16/9!important;overflow:hidden!important;border-radius:10px 10px 0 0!important;margin:0!important;padding:0!important}
.iotuk-card-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;transition:transform 300ms ease!important}
.blog .site-main>article:hover .iotuk-card-thumb img,.archive .site-main>article:hover .iotuk-card-thumb img{transform:scale(1.04)!important}

/* Hide GP's own featured image output inside archive cards - our PHP hook provides the thumb */
.blog .site-main>article .inside-article>a:not(.iotuk-card-thumb):not(.iotuk-read-more),
.archive .site-main>article .inside-article>a:not(.iotuk-card-thumb):not(.iotuk-read-more){display:none!important}

/* Hide content images inside excerpts on cards */
.blog .site-main>article .entry-summary img,
.archive .site-main>article .entry-summary img,
.blog .site-main>article .entry-content img,
.archive .site-main>article .entry-content img{display:none!important}

/* Card header */
.blog .site-main>article .entry-header,.archive .site-main>article .entry-header{padding:16px 18px 0!important}

/* Title — show on archive cards (overrides global hide) */
.blog .site-main>article .entry-title,.archive .site-main>article .entry-title{
  display:block!important;font-family:var(--fh)!important;font-size:1.05rem!important;
  font-weight:700!important;color:var(--navy)!important;line-height:1.3!important;margin:0 0 6px!important;
}
.blog .site-main>article .entry-title a,.archive .site-main>article .entry-title a{color:var(--navy)!important;text-decoration:none!important}
.blog .site-main>article .entry-title a:hover,.archive .site-main>article .entry-title a:hover{color:var(--blue)!important}

/* Meta */
.blog .site-main>article .entry-meta,.archive .site-main>article .entry-meta{font-size:.78rem!important;color:#64748B!important;margin-bottom:8px!important}
.blog .site-main>article .entry-meta a,.archive .site-main>article .entry-meta a{color:#64748B!important}

/* Hide cat/tag/comments footer on cards */
.blog .site-main>article .entry-footer,.archive .site-main>article .entry-footer,
.blog .site-main>article .cat-links,.archive .site-main>article .cat-links,
.blog .site-main>article .tags-links,.archive .site-main>article .tags-links,
.blog .site-main>article .comments-link,.archive .site-main>article .comments-link{display:none!important}

/* Excerpt */
.blog .site-main>article .entry-summary,.archive .site-main>article .entry-summary{
  font-size:.9rem!important;color:#374151!important;line-height:1.65!important;flex:1!important;padding:0 18px 10px!important;
}
.blog .site-main>article .entry-summary p,.archive .site-main>article .entry-summary p{margin:0!important}

/* Hide GP default "Read more" / "Read more" links — we provide our own button */
.blog .site-main>article a.more-link,
.archive .site-main>article a.more-link,
.blog .site-main>article .more-link,
.archive .site-main>article .more-link{display:none!important}

/* Read Article button */
.iotuk-read-more{
  display:inline-flex!important;align-items:center!important;
  background:var(--blue)!important;color:#fff!important;
  font-family:var(--fh)!important;font-size:.8rem!important;font-weight:600!important;
  padding:.5rem 1rem!important;border-radius:var(--r)!important;
  text-decoration:none!important;margin:0 18px 18px!important;align-self:flex-start!important;
  transition:background 180ms ease!important;
}
.iotuk-read-more:hover{background:var(--blue-h)!important;color:#fff!important}

/* Pagination */
.blog .paging-navigation,.archive .paging-navigation{display:flex!important;justify-content:center!important;gap:.5rem!important;padding-top:16px!important;grid-column:1/-1!important}
.blog .paging-navigation a,.archive .paging-navigation a{background:#fff!important;border:1px solid #E2E8F0!important;color:var(--navy)!important;padding:.5rem 1rem!important;border-radius:var(--r)!important;font-family:var(--fh)!important;font-weight:600!important}
.blog .paging-navigation a:hover,.archive .paging-navigation a:hover{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important}

/* ── Sidebar ───────────────────────────────────── */
#iotuk-archive-sidebar,#iotuk-single-sidebar{
  display:flex;flex-direction:column;gap:20px;
  position:sticky;top:88px;min-width:0;width:100%;
}
@media(max-width:900px){#iotuk-archive-sidebar,#iotuk-single-sidebar{position:static}}
.iotuk-sidebar-card{background:#fff;border:1px solid #E2E8F0;border-radius:10px;padding:22px}
.iotuk-lead-card{background:var(--navy);border-color:transparent;color:rgba(255,255,255,.85)}
.iotuk-lead-badge{display:inline-flex;background:rgba(0,245,212,.15);color:#00F5D4;border:1px solid rgba(0,245,212,.3);border-radius:999px;font-family:var(--fh);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .75rem;margin-bottom:12px}
.iotuk-lead-card h3{font-family:var(--fh)!important;font-size:1rem!important;font-weight:700!important;color:#fff!important;margin:0 0 8px!important;line-height:1.3}
.iotuk-lead-card p{font-size:.875rem;color:rgba(255,255,255,.65);line-height:1.6;margin-bottom:16px!important}
.iotuk-lead-form{display:flex;flex-direction:column;gap:10px}
.iotuk-form-field{display:flex;flex-direction:column;gap:4px}
.iotuk-form-field label{font-family:var(--fh);font-size:.72rem;font-weight:600;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.06em}
.iotuk-opt{font-weight:400;text-transform:none;letter-spacing:0}
.iotuk-form-field input{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:var(--r)!important;color:#fff!important;font-family:var(--fb)!important;font-size:.875rem!important;padding:.6rem .875rem!important;width:100%!important;transition:border-color 180ms ease!important}
.iotuk-form-field input::placeholder{color:rgba(255,255,255,.3)!important}
.iotuk-form-field input:focus{outline:none!important;border-color:#00F5D4!important;background:rgba(255,255,255,.12)!important}
.iotuk-form-btn{background:#0052FF;color:#fff;border:none;border-radius:var(--r);font-family:var(--fh);font-size:.875rem;font-weight:600;padding:.7rem 1.25rem;cursor:pointer;width:100%;transition:background 180ms ease;margin-top:4px}
.iotuk-form-btn:hover{background:#0041cc}
.iotuk-form-btn:disabled{opacity:.6;cursor:not-allowed}
.iotuk-form-ok{display:flex;align-items:center;gap:10px;background:rgba(0,135,90,.2);border:1px solid rgba(0,135,90,.4);border-radius:var(--r);padding:12px 14px;font-size:.875rem;color:#fff;font-family:var(--fb)}
.iotuk-form-legal{font-size:.72rem!important;color:rgba(255,255,255,.3)!important;margin:2px 0 0!important}
.iotuk-pop-card h4{font-family:var(--fh)!important;font-size:.78rem!important;font-weight:700!important;color:#64748B!important;text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px!important}
.iotuk-pop-list{list-style:none;margin:0;padding:0}
.iotuk-pop-list li{border-bottom:1px solid #F1F5F9;padding:8px 0}
.iotuk-pop-list li:last-child{border-bottom:none;padding-bottom:0}
.iotuk-pop-list a{font-size:.875rem;color:var(--navy)!important;line-height:1.4;transition:color 180ms ease}
.iotuk-pop-list a:hover{color:var(--blue)!important}
.iotuk-cta-card{background:#F8FAFC}
.iotuk-cta-card h4{font-family:var(--fh)!important;font-size:1rem!important;font-weight:700!important;color:var(--navy)!important;margin:0 0 8px!important}
.iotuk-cta-card p{font-size:.875rem;color:#64748B;margin-bottom:14px!important}
.iotuk-sidebar-btn{display:inline-flex;align-items:center;background:var(--navy);color:#fff!important;font-family:var(--fh);font-size:.8125rem;font-weight:600;padding:.6rem 1.1rem;border-radius:var(--r);text-decoration:none;transition:background 180ms ease}
.iotuk-sidebar-btn:hover{background:#0052FF!important;color:#fff!important}

/* ── GP footer hidden / custom footer ─────────── */
.site-info,.site-footer{display:none!important}
#iotuk-footer{background:var(--navy);color:rgba(255,255,255,.7);font-family:var(--fb);font-size:.9rem}
.iotuk-fi{max-width:var(--max);margin:0 auto;padding:56px 24px 48px;display:grid;grid-template-columns:1fr 2fr;gap:48px;align-items:start}
@media(max-width:768px){.iotuk-fi{grid-template-columns:1fr;gap:32px;padding:40px 20px 32px}}
.iotuk-fw{display:block;font-family:var(--fh);font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:12px}
.iotuk-ft{font-size:.875rem;color:rgba(255,255,255,.5);line-height:1.6;max-width:28ch;margin:0}
.iotuk-fn{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
@media(max-width:600px){.iotuk-fn{grid-template-columns:repeat(2,1fr);gap:24px}}
.iotuk-fc h4{font-family:var(--fh)!important;font-size:.75rem!important;font-weight:700!important;color:rgba(255,255,255,.4)!important;text-transform:uppercase;letter-spacing:.1em;margin:0 0 14px!important}
.iotuk-fc ul{list-style:none;margin:0;padding:0}
.iotuk-fc ul li{margin-bottom:9px}
.iotuk-fc ul li a{color:rgba(255,255,255,.65)!important;font-size:.875rem;text-decoration:none;transition:color 180ms ease}
.iotuk-fc ul li a:hover{color:#fff!important}
.iotuk-fbot{max-width:var(--max);margin:0 auto;padding:18px 24px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;font-size:.8125rem;color:rgba(255,255,255,.35)}
.iotuk-flinks{display:flex;gap:1.25rem}
.iotuk-flinks a{color:rgba(255,255,255,.35)!important;text-decoration:none;transition:color 180ms ease}
.iotuk-flinks a:hover{color:rgba(255,255,255,.7)!important}

/* ── WooCommerce ───────────────────────────────── */
.woocommerce .price,.woocommerce-Price-amount{font-family:var(--fh)!important;font-weight:700!important;color:var(--blue)!important}
.woocommerce .button,.woocommerce button.button,.woocommerce input.button,.woocommerce a.button,.woocommerce #respond input#submit{background:var(--blue)!important;color:#fff!important;font-family:var(--fh)!important;font-weight:600!important;font-size:.875rem!important;border-radius:var(--r)!important;border:2px solid var(--blue)!important;padding:.75rem 1.5rem!important;transition:background var(--t)!important}
.woocommerce .button:hover,.woocommerce button.button:hover,.woocommerce a.button:hover{background:var(--blue-h)!important;border-color:var(--blue-h)!important;color:#fff!important}
.woocommerce-tabs{display:none!important}

/* ── Shared button classes ─────────────────────── */
.iotuk-btn-primary,.iotuk-btn-secondary,.iotuk-btn-ghost{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--fh);font-size:.875rem;font-weight:600;line-height:1;padding:.75rem 1.5rem;border-radius:var(--r);border:2px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background var(--t),color var(--t),border-color var(--t)}
.iotuk-btn-primary{background:var(--blue);color:#fff;border-color:var(--blue)}
.iotuk-btn-primary:hover{background:var(--blue-h);border-color:var(--blue-h);color:#fff}
.iotuk-btn-secondary{background:#fff;color:var(--blue);border-color:var(--blue)}
.iotuk-btn-secondary:hover{background:var(--blue);color:#fff}
.iotuk-btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.iotuk-btn-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}
