/* NILA Connect v21.24 3D Marketplace Refinement
   Builds on v21.23. Keeps the normal NILA logo, restores exact categories,
   adds the brighter 3D marketplace direction, reduces section gaps and adds blue accents.
*/
:root{
  --nila24-green:#075f3c;
  --nila24-green-2:#0f7a53;
  --nila24-blue:#176fc2;
  --nila24-blue-soft:#dcecff;
  --nila24-gold:#f1b83f;
  --nila24-gold-2:#d99a24;
  --nila24-pink:#ee5f9b;
  --nila24-purple:#8a5cf6;
  --nila24-orange:#f48332;
  --nila24-cream:#fff8ed;
  --nila24-paper:#fffdf8;
  --nila24-ink:#071b31;
  --nila24-muted:#607184;
  --nila24-line:rgba(7,95,60,.14);
  --nila24-shadow:0 30px 90px -58px rgba(7,27,49,.45);
}
html,body{background:linear-gradient(180deg,#fffdf8 0%,#fff8ed 42%,#fffdf8 100%) !important;color:var(--nila24-ink)!important;}
.nav,.v21-topnav{background:rgba(255,253,248,.92)!important;border-bottom:1px solid rgba(7,27,49,.08)!important;box-shadow:0 10px 36px -34px rgba(7,27,49,.25)!important;}
.logo img,.nav-logo img{filter:none!important;}
/* Home hero, closer to the mockup direction */
.v21-hero,.v19-hero{padding-top:26px!important;padding-bottom:8px!important;background:linear-gradient(180deg,#fffdf8 0%,#fff7e9 100%)!important;}
.v21-hero .wrap,.v19-hero .container{max-width:1360px!important;}
.v21-hero-grid,.v19-hero-grid{grid-template-columns:.86fr 1.14fr!important;gap:24px!important;align-items:center!important;}
.v21-eyebrow,.v19-eyebrow{background:rgba(7,95,60,.08)!important;border:1px solid rgba(7,95,60,.12)!important;color:var(--nila24-green)!important;}
.v21-h1,.v19-h1{font-family:Fraunces,Georgia,serif!important;font-size:clamp(44px,5.7vw,78px)!important;line-height:.98!important;letter-spacing:-.045em!important;color:var(--nila24-ink)!important;margin-top:16px!important;}
.v21-h1 em,.v19-h1 em{color:var(--nila24-green)!important;background:none!important;text-shadow:none!important;}
.v21-h1 em::after,.v19-h1 em::after{content:".";color:var(--nila24-gold);font-style:normal;}
.v21-sub,.v19-sub{font-size:clamp(16px,1.25vw,19px)!important;line-height:1.42!important;color:#263d50!important;max-width:44ch!important;}
.v21-search,.v19-search{max-width:650px!important;margin-top:22px!important;background:rgba(255,255,255,.94)!important;border:1px solid rgba(7,27,49,.10)!important;border-radius:20px!important;box-shadow:0 24px 65px -44px rgba(7,27,49,.45)!important;grid-template-columns:1.2fr 1fr auto!important;}
.v21-field,.hs-field{background:#fff!important;border:1px solid rgba(7,27,49,.08)!important;border-radius:15px!important;}
.v21-field:focus-within,.hs-field:focus-within{border-color:rgba(23,111,194,.45)!important;box-shadow:0 0 0 4px rgba(23,111,194,.10)!important;}
.v21-go,.hs-submit,.btn-primary,.btn-gold{background:linear-gradient(135deg,var(--nila24-green),#053e2b)!important;color:#fff!important;border:none!important;}
.v21-go:hover,.hs-submit:hover,.btn-primary:hover,.btn-gold:hover{background:linear-gradient(135deg,#097a4d,#053e2b)!important;transform:translateY(-1px)!important;}
.v21-hero-actions{margin-top:18px!important;}
.v21-trust,.v19-trust{margin-top:14px!important;gap:12px 18px!important;color:#24384d!important;}
.v21-trust .ti,.v19-trust .tk{background:#eef8f1!important;color:var(--nila24-green)!important;border:1px solid rgba(7,95,60,.10)!important;}
.v21-hero-visual,.v19-discover{min-height:455px!important;border-radius:34px!important;background:linear-gradient(135deg,#e8f3ff 0%,#fff8e9 68%,#fffdf8 100%)!important;border:1px solid rgba(7,27,49,.08)!important;box-shadow:0 26px 90px -58px rgba(7,27,49,.52)!important;overflow:hidden!important;}
.v21-hero-visual img.cover,.v19-discover img.cover{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;padding:0!important;transform:none!important;background:transparent!important;}
.v21-hero-visual::after,.v19-discover::after{background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,253,248,.18))!important;height:24%!important;}
.v21-hero-visual .badge-tl,.v19-discover .badge-tl{background:#fff!important;color:var(--nila24-green)!important;border:1px solid rgba(7,95,60,.12)!important;box-shadow:0 20px 48px -35px rgba(7,27,49,.4)!important;}
.v21-hero-visual .ovr,.v19-discover .ovr{background:rgba(255,255,255,.92)!important;color:var(--nila24-ink)!important;border:1px solid rgba(7,27,49,.08)!important;box-shadow:0 20px 60px -40px rgba(7,27,49,.46)!important;}
/* Reduce the excessive gap between hero visual area and categories */
.v21-hero + .v21-section,.v19-hero + .v21-section,.v21-hero + section,.v19-hero + section{padding-top:24px!important;}
.v21-section{padding-top:36px!important;padding-bottom:40px!important;}
.v21-section.alt{background:linear-gradient(180deg,#fffaf0,#fffdf8)!important;}
.v21-section-head{margin-bottom:18px!important;}
.v21-h2{color:var(--nila24-ink)!important;letter-spacing:-.035em!important;}
.v21-lede{color:var(--nila24-muted)!important;}
/* Category tiles in the exact original category list */
.v21-cat-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:14px!important;}
.v24-cat-card{display:flex!important;flex-direction:column!important;min-height:0!important;border-radius:18px!important;background:#fff!important;border:1px solid rgba(7,27,49,.08)!important;box-shadow:0 22px 56px -45px rgba(7,27,49,.34)!important;text-decoration:none!important;color:var(--nila24-ink)!important;overflow:hidden!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;}
.v24-cat-card:hover{transform:translateY(-4px)!important;border-color:rgba(23,111,194,.20)!important;box-shadow:0 32px 76px -50px rgba(7,27,49,.45)!important;}
.v24-cat-card .ph{height:112px!important;min-height:112px!important;background:linear-gradient(145deg,#fff8ed,#eef6ff)!important;display:grid!important;place-items:center!important;position:relative!important;overflow:hidden!important;}
.v24-cat-card .ph::before{content:"";position:absolute;inset:auto -20% -32% auto;width:70%;height:70%;border-radius:50%;background:radial-gradient(circle,rgba(23,111,194,.16),transparent 68%);}
.v24-cat-card:nth-child(3n+1) .ph::before{background:radial-gradient(circle,rgba(7,95,60,.18),transparent 68%);}
.v24-cat-card:nth-child(3n+2) .ph::before{background:radial-gradient(circle,rgba(241,184,63,.20),transparent 68%);}
.v24-cat-card .ph img{width:100%!important;height:100%!important;object-fit:contain!important;padding:10px!important;position:relative;z-index:1;}
.v24-cat-card .meta{padding:11px 12px 13px!important;}
.v24-cat-card h3{font-size:14px!important;line-height:1.1!important;margin:0!important;color:var(--nila24-ink)!important;font-weight:900!important;}
.v24-cat-card p{font-size:11.3px!important;line-height:1.28!important;color:var(--nila24-muted)!important;margin:5px 0 0!important;}
.v24-cat-card .more{display:none!important;}
.v24-cat-card .v24-cat-icon{position:absolute;top:9px;left:9px;width:30px;height:30px;border-radius:10px;background:rgba(255,255,255,.88);border:1px solid rgba(7,27,49,.08);box-shadow:0 12px 28px -22px rgba(7,27,49,.4);display:grid;place-items:center;z-index:2;font-size:14px;}
/* How it works can use more colour but stay calm */
.v21-steps{gap:18px!important;}
.v21-step{background:#fff!important;border:1px solid rgba(7,27,49,.08)!important;box-shadow:0 20px 60px -46px rgba(7,27,49,.32)!important;border-radius:22px!important;}
.v21-step .n{background:linear-gradient(135deg,var(--nila24-blue),#54a3e8)!important;color:#fff!important;}
.v21-step:nth-child(2) .n{background:linear-gradient(135deg,var(--nila24-green),#31aa73)!important;}
.v21-step:nth-child(3) .n{background:linear-gradient(135deg,var(--nila24-gold),#f48332)!important;color:#2b1b04!important;}
.v21-step:nth-child(4) .n{background:linear-gradient(135deg,var(--nila24-purple),#b48cff)!important;}
.v21-pcta,.v19-provider-cta{background:linear-gradient(135deg,#053e2b 0%,#075f3c 48%,#176fc2 100%)!important;border-radius:26px!important;box-shadow:0 28px 80px -52px rgba(7,27,49,.48)!important;}
/* Directory polish with blue accent */
.v21-dir-hero{background:linear-gradient(180deg,#fffdf8,#eef6ff)!important;}
.v21-dir-search,.v21-dir-toolbar,.v21-cat-rail{background:rgba(255,255,255,.9)!important;border-color:rgba(7,27,49,.08)!important;}
.v21-cat-rail .chip,.dir-cat{background:#fff!important;border-color:rgba(7,27,49,.09)!important;color:var(--nila24-ink)!important;}
.v21-cat-rail .chip.active,.dir-cat.active{background:linear-gradient(135deg,var(--nila24-green),var(--nila24-blue))!important;color:#fff!important;border-color:transparent!important;}
.v21-dir-map .frame,#dirMapCard,.map-card{border-radius:26px!important;border:1px solid rgba(7,27,49,.10)!important;background:#f2f7ff!important;box-shadow:var(--nila24-shadow)!important;}
.dir-card,.provider-card,.nila-pcard,.nila-gcard{border-radius:22px!important;border:1px solid rgba(7,27,49,.08)!important;background:#fff!important;box-shadow:0 20px 56px -46px rgba(7,27,49,.34)!important;}
/* Provider profile fix: avoid huge cut out image and make provider-owned image principle clear */
.v21-pp-cover{background:linear-gradient(135deg,#fff,#eef6ff)!important;border:1px solid rgba(7,27,49,.08)!important;box-shadow:0 24px 76px -54px rgba(7,27,49,.40)!important;min-height:260px!important;border-radius:26px!important;}
.v21-pp-cover img{object-fit:contain!important;padding:12px!important;}
.premium-hero,.provider-hero,.profile-hero{background:linear-gradient(135deg,#fff,#fff8ed)!important;color:var(--nila24-ink)!important;border:1px solid rgba(7,27,49,.08)!important;box-shadow:0 22px 68px -50px rgba(7,27,49,.35)!important;}
.premium-hero h1,.provider-hero h1,.profile-hero h1,.premium-headline h1,.premium-headline{color:var(--nila24-ink)!important;text-shadow:none!important;opacity:1!important;}
.premium-hero p,.provider-hero p,.profile-hero p{color:var(--nila24-muted)!important;}
.v24-provider-image-note{margin:10px 0 0;padding:10px 12px;border-radius:14px;background:#eef6ff;border:1px solid rgba(23,111,194,.12);color:#0c4d82;font-size:12.5px;font-weight:700;}
/* Provider dashboard image upload prompt */
.v24-upload-card{margin:0 0 18px;padding:16px 18px;border-radius:22px;background:linear-gradient(135deg,#fff,#eef6ff);border:1px solid rgba(23,111,194,.14);box-shadow:0 18px 50px -42px rgba(7,27,49,.35);display:flex;justify-content:space-between;gap:16px;align-items:center;}
.v24-upload-card h3{margin:0 0 4px;color:var(--nila24-ink);font-size:18px;}
.v24-upload-card p{margin:0;color:var(--nila24-muted);font-size:13px;line-height:1.4;}
.v24-upload-card a{white-space:nowrap;padding:10px 13px;border-radius:999px;background:var(--nila24-green);color:#fff;text-decoration:none;font-weight:800;font-size:13px;}
/* Responsive */
@media(max-width:1080px){.v21-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.v21-hero-grid,.v19-hero-grid{grid-template-columns:1fr!important}.v21-hero-visual,.v19-discover{min-height:360px!important}}
@media(max-width:720px){.v21-search,.v19-search{grid-template-columns:1fr!important}.v21-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.v24-cat-card .ph{height:96px!important;min-height:96px!important}.v21-hero,.v19-hero{padding-top:18px!important}.v21-hero-visual,.v19-discover{min-height:270px!important;border-radius:24px!important}.v21-section{padding-top:26px!important;padding-bottom:30px!important}}
@media(max-width:470px){.v21-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.v24-upload-card{display:block}.v24-upload-card a{display:inline-flex;margin-top:12px}}
