/* Start custom CSS *//* ---- industry pages ---------------------------------------------------- */
.ind-hero, .ind-band, .ind-final{ margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.ind-wrap{ max-width:1180px; margin:0 auto; padding:0 24px; }
.ind-hero{ background:linear-gradient(160deg,#111C33 0%,#0F172A 55%,#0B1220 100%); color:#FAF7F2; padding:clamp(2.75rem,6vw,5rem) 0 0; position:relative; overflow:hidden; }
.ind-hero::before{ content:""; position:absolute; inset:auto auto -35% -12%; width:46rem; height:46rem; border-radius:50%; background:radial-gradient(circle,rgba(56,189,248,.13),transparent 68%); pointer-events:none; }
.ind-hero-mark{ position:absolute; right:1.5rem; top:-1rem; font-size:clamp(7rem,15vw,13rem); line-height:1; opacity:.06; pointer-events:none; user-select:none; }
.ind-hero-in{ position:relative; display:grid; grid-template-columns:1.3fr .7fr; gap:clamp(1rem,3vw,3rem); align-items:end; }
.ind-hero h1{ font:800 clamp(2rem,5vw,3.5rem)/1.05 Poppins,system-ui,sans-serif; letter-spacing:-.03em; margin:0 0 1.125rem; text-wrap:balance; }
.ind-hero h1 em{ font-style:normal; color:#FFC700; }
.ind-lede{ font:400 clamp(1rem,1.6vw,1.1875rem)/1.62 Poppins,system-ui,sans-serif; color:#C7CEDB; max-width:52ch; margin:0 0 1.375rem; }
.ind-trades{ font:600 .8125rem/1.9 Poppins,system-ui,sans-serif; color:#93A3BE; border-top:1px solid rgba(255,255,255,.13); border-bottom:1px solid rgba(255,255,255,.13); padding:.75rem 0; margin:0 0 1.625rem; max-width:52ch; }
.ind-cta{ display:flex; flex-wrap:wrap; gap:.75rem; margin:0 0 2.25rem; }
.ind-btn{ display:inline-block; background:#FFC700; color:#0F172A; font:800 1rem/1 Poppins,sans-serif; padding:1.0625rem 1.75rem; border-radius:999px; text-decoration:none; box-shadow:0 10px 26px rgba(255,199,0,.34); }
.ind-btn:hover{ background:#E0AE00; color:#0F172A; }
.ind-btn2{ display:inline-block; border:1px solid rgba(255,255,255,.35); color:#FAF7F2; font:700 1rem/1 Poppins,sans-serif; padding:1rem 1.625rem; border-radius:999px; text-decoration:none; }
.ind-btn2:hover{ border-color:#FFC700; color:#FFC700; }
.ind-mascot{ display:block; height:auto; margin:0 auto -4px; align-self:end; }
html body .ind-hero-in img.ind-mascot{ --mk-spot:100%; width:100%; max-width:330px; height:auto; }
.ind-note{ position:relative; display:flex; flex-wrap:wrap; gap:.375rem 1.5rem; font:600 .8125rem/1.6 Poppins,sans-serif; color:#93A3BE; padding:0 0 1.5rem; }
.ind-note b{ color:#FFC700; }

.ind-band{ padding:clamp(2.75rem,5.5vw,4.25rem) 0; background:#fff; }
.ind-band.alt{ background:#F4F7FA; }
.ind-band.dark{ background:#0F172A; color:#FAF7F2; }
.ind-h2{ font:800 clamp(1.5rem,3.1vw,2.25rem)/1.15 Poppins,sans-serif; letter-spacing:-.025em; color:#0F172A; margin:0 0 .5rem; text-wrap:balance; }
.ind-band.dark .ind-h2{ color:#FAF7F2; }
.ind-sub{ font:400 1rem/1.6 Poppins,sans-serif; color:#5C6475; margin:0 0 1.875rem; max-width:60ch; }
.ind-band.dark .ind-sub{ color:#C7CEDB; }
.ind-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:1.125rem; }
.ind-card{ background:#fff; border:1px solid rgba(15,23,42,.10); border-radius:18px; padding:1.5rem 1.5rem 1.625rem; }
.ind-ico{ display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:12px; margin:0 0 .9375rem; }
.ind-ico svg{ width:21px; height:21px; display:block; }
.ind-ico.warn{ background:rgba(226,86,74,.12); color:#B03A2E; }
.ind-ico.good{ background:rgba(255,199,0,.22); color:#7A5600; }
.ind-ico.ask{ background:rgba(56,189,248,.15); color:#0B6FA4; }
.ind-card h3{ font:800 1.0625rem/1.32 Poppins,sans-serif; color:#0F172A; margin:0 0 .5rem; }
.ind-card p{ font:400 .9375rem/1.64 Poppins,sans-serif; color:#4E5462; margin:0; }

/* numbered 90-day steps */
.ind-steps{ counter-reset:s; display:grid; gap:1rem; max-width:900px; }
.ind-step{ counter-increment:s; display:grid; grid-template-columns:auto 1fr; gap:1.125rem; align-items:start; background:#fff; border:1px solid rgba(15,23,42,.10); border-radius:18px; padding:1.375rem 1.5rem; }
.ind-step::before{ content:counter(s,decimal-leading-zero); font:800 1.125rem/1 Poppins,sans-serif; color:#7A5600; background:rgba(255,199,0,.22); width:44px; height:44px; border-radius:13px; display:flex; align-items:center; justify-content:center; }
.ind-step h3{ font:800 1.0625rem/1.32 Poppins,sans-serif; color:#0F172A; margin:0 0 .375rem; }
.ind-step p{ font:400 .9375rem/1.64 Poppins,sans-serif; color:#4E5462; margin:0; }

/* cost + where */
.ind-two{ display:grid; grid-template-columns:1fr 1fr; gap:1.125rem; }
.ind-panel{ background:#fff; border:1px solid rgba(15,23,42,.10); border-radius:18px; padding:1.625rem 1.75rem; }
.ind-panel h3{ font:800 1.125rem/1.3 Poppins,sans-serif; color:#0F172A; margin:0 0 .625rem; }
.ind-panel p{ font:400 .9688rem/1.66 Poppins,sans-serif; color:#4E5462; margin:0 0 .75rem; }
.ind-price{ font:800 1.75rem/1 Poppins,sans-serif; color:#0F172A; margin:.25rem 0 .125rem; }
.ind-price small{ font:600 .875rem/1 Poppins,sans-serif; color:#7A8296; }
.ind-panel a{ color:#0B6FA4; font-weight:700; text-decoration:none; border-bottom:2px solid rgba(56,189,248,.4); }
.ind-panel a:hover{ border-bottom-color:#0B6FA4; }

/* related services */
.ind-links{ display:flex; flex-wrap:wrap; gap:.625rem; }
.ind-link{ display:inline-block; background:#fff; border:1px solid rgba(15,23,42,.14); border-radius:999px; padding:.6875rem 1.125rem; font:700 .9375rem/1 Poppins,sans-serif; color:#0F172A; text-decoration:none; }
.ind-link:hover{ border-color:#FFC700; background:#FFFDF4; color:#0F172A; }

.ind-faq{ max-width:860px; }
.ind-faq details{ border:1px solid rgba(15,23,42,.10); border-radius:14px; margin-bottom:.75rem; background:#fff; }
.ind-faq summary{ display:flex; gap:.875rem; align-items:flex-start; font:700 1.0625rem/1.45 Poppins,sans-serif; color:#0F172A; cursor:pointer; padding:1.125rem 3rem 1.125rem 1.25rem; list-style:none; position:relative; }
.ind-faq summary::-webkit-details-marker{ display:none; }
.ind-faq summary::after{ content:"+"; position:absolute; right:1.125rem; top:1rem; font-size:1.5rem; color:#8A6100; font-weight:700; line-height:1; }
.ind-faq details[open] summary::after{ content:"\2013"; }
.ind-faq summary .ind-ico{ margin:0; flex:0 0 auto; width:30px; height:30px; border-radius:9px; }
.ind-faq summary .ind-ico svg{ width:16px; height:16px; }
.ind-faq .a{ font:400 .9688rem/1.66 Poppins,sans-serif; color:#4E5462; padding:0 1.25rem 1.25rem 3.9rem; max-width:72ch; }

.ind-final{ background:#0F172A; color:#FAF7F2; padding:clamp(2.75rem,5.5vw,4.25rem) 0; text-align:center; }
.ind-final h2{ font:800 clamp(1.5rem,3.3vw,2.375rem)/1.15 Poppins,sans-serif; letter-spacing:-.025em; margin:0 0 .75rem; }
.ind-final h2 em{ font-style:normal; color:#FFC700; }
.ind-final p{ font:400 1rem/1.6 Poppins,sans-serif; color:#C7CEDB; max-width:52ch; margin:0 auto 1.75rem; }

.ind-crumb{ font:600 .8125rem/1.6 Poppins,sans-serif; color:#93A3BE; padding:0 0 1rem; }
.ind-crumb a{ color:#93A3BE; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.2); }
.ind-crumb a:hover{ color:#FFC700; }

@media (max-width:860px){
  .ind-hero-in{ grid-template-columns:1fr; }
  html body .ind-hero-in img.ind-mascot{ max-width:220px; margin-top:1.25rem; }
  .ind-hero-mark{ font-size:8rem; right:.5rem; }
  .ind-faq .a{ padding-left:1.25rem; }
  .ind-two{ grid-template-columns:1fr; }
  .ind-step{ grid-template-columns:1fr; gap:.75rem; }
}/* End custom CSS */