/* ============================================================
   SHIELD — the claims-first broker
   Scoped to body.d-shield. 1rem = 10px.
   ============================================================ */
body.d-shield{
  --sd-bg:#0e1416;--sd-bg2:#131c1f;--sd-card:#172226;--sd-line:rgba(25,201,174,.14);--sd-line2:rgba(255,255,255,.1);
  --sd-teal:#19c9ae;--sd-teal2:#7ff0dc;--sd-fg:#e9f2f0;--sd-soft:#aebfbb;--sd-mute:#7f928e;
  --bg-primary:var(--sd-bg);--bg-secondary:var(--sd-bg2);--bg-card:var(--sd-card);--bg-inset:#1b282c;
  --fg-primary:var(--sd-fg);--fg-soft:var(--sd-soft);--fg-muted:var(--sd-mute);--border-color:var(--sd-line2);--border-strong:rgba(255,255,255,.2);
  background:var(--sd-bg);color:var(--sd-fg);font-family:'Instrument Sans',system-ui,sans-serif;color-scheme:dark
}
body.d-shield h1,body.d-shield h2,body.d-shield h3{font-weight:600;letter-spacing:-.035em;line-height:1.04}
body.d-shield h2 span{color:var(--sd-teal)}
.sd-kick{display:inline-flex;align-items:center;gap:.9rem;font-size:1.2rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--sd-teal);margin-bottom:1.6rem}
.sd-dot{width:8px;height:8px;border-radius:50%;background:var(--sd-teal);box-shadow:0 0 0 4px rgba(25,201,174,.2)}
.sd-anchor{display:block;position:relative;top:-100px}

body.d-shield .bx-nav{background:rgba(14,20,22,.8)}
body.d-shield .bx-nav.scrolled{border-bottom-color:var(--sd-line2);box-shadow:none}
body.d-shield .bx-brand-mark{border-radius:10px;background:var(--sd-teal);color:var(--sd-bg)}
body.d-shield .bx-brand-txt small{color:var(--sd-mute)}
body.d-shield .bx-nav-links a{color:var(--sd-soft);font-weight:500;font-size:1.3rem}
body.d-shield .bx-nav-links a:hover,body.d-shield .bx-nav-links a.active{color:#fff}
body.d-shield .bx-nav-links a::after{background:var(--sd-teal);height:2px}
body.d-shield .bx-nav-cta{background:var(--sd-teal);color:var(--sd-bg);border-radius:8px}
body.d-shield .burger span{background:#fff}
body.d-shield .mobile-menu{background:var(--sd-bg)}
body.d-shield .mobile-menu-links a{color:#fff}

/* hero */
.sd-hero{position:relative;overflow:hidden;padding:calc(var(--nav-h) + 7rem) 3rem 0;background:radial-gradient(900px 600px at 80% 0%,rgba(25,201,174,.16),transparent 60%),var(--sd-bg)}
.sd-hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 60% 20%,#000,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 60% 20%,#000,transparent 75%)}
.sd-hero-in{position:relative;max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:6rem;align-items:center;padding-bottom:7rem}
.sd-hero h1{font-size:clamp(4.4rem,6.6vw,8.2rem);letter-spacing:-.05em}
.sd-lede{font-size:1.75rem;line-height:1.65;color:var(--sd-soft);margin-top:2.4rem;max-width:54ch}
.sd-actions{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:3.4rem}
.sd-btn{display:inline-flex;align-items:center;gap:1rem;padding:1.6rem 2.6rem;border-radius:10px;font-size:1.45rem;font-weight:600;transition:transform .25s var(--ease),box-shadow .25s,background .25s}
.sd-btn-main{background:var(--sd-teal);color:#062320;box-shadow:0 14px 34px rgba(25,201,174,.3)}
.sd-btn-main:hover{transform:translateY(-2px);background:var(--sd-teal2)}
.sd-btn-line{border:1px solid var(--sd-line2);color:#fff}
.sd-btn-line:hover{border-color:var(--sd-teal)}

.sd-claim{background:linear-gradient(180deg,#18252a,#121c1f);border:1px solid var(--sd-line2);border-radius:22px;padding:2.6rem;box-shadow:0 40px 90px rgba(0,0,0,.5),0 0 60px rgba(25,201,174,.1)}
.sd-claim-head{display:flex;align-items:center;gap:1.2rem;padding-bottom:2rem;border-bottom:1px solid var(--sd-line2)}
.sd-claim-ico{width:46px;height:46px;border-radius:12px;background:rgba(25,201,174,.14);color:var(--sd-teal);display:flex;align-items:center;justify-content:center;font-size:1.9rem}
.sd-claim-head b{display:block;font-size:1.6rem}
.sd-claim-head small{font-size:1.2rem;color:var(--sd-mute)}
.sd-claim-state{margin-left:auto;font-size:1.1rem;font-weight:600;padding:.5rem 1rem;border-radius:999px;background:rgba(250,204,21,.14);color:#fde68a;animation:sd-state 6s infinite}
@keyframes sd-state{0%,70%{background:rgba(250,204,21,.14);color:#fde68a}75%,100%{background:rgba(25,201,174,.18);color:var(--sd-teal2)}}
.sd-stages{position:relative;padding:2.4rem 0 1rem;display:grid;gap:2rem}
.sd-stages::before{content:'';position:absolute;left:15px;top:3.6rem;bottom:2.2rem;width:2px;background:var(--sd-line2)}
.sd-stages::after{content:'';position:absolute;left:15px;top:3.6rem;width:2px;height:0;background:var(--sd-teal);animation:sd-fill 6s var(--ease) infinite}
@keyframes sd-fill{0%{height:0}70%,100%{height:calc(100% - 5.8rem)}}
.sd-stages li{position:relative;display:flex;align-items:center;gap:1.6rem;font-size:1.5rem;color:var(--sd-soft)}
.sd-stage-dot{position:relative;z-index:1;width:32px;height:32px;border-radius:50%;background:var(--sd-bg2);border:2px solid var(--sd-line2);display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:transparent;animation:sd-tick 6s infinite;animation-delay:calc(var(--i) * 1.3s)}
@keyframes sd-tick{0%{background:var(--sd-bg2);border-color:var(--sd-line2);color:transparent}8%,70%{background:var(--sd-teal);border-color:var(--sd-teal);color:#062320}78%,100%{background:var(--sd-teal);border-color:var(--sd-teal);color:#062320}}
.sd-stages li b{font-weight:500}
.sd-claim-foot{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;border-top:1px solid var(--sd-line2);font-size:1.3rem;color:var(--sd-mute)}
.sd-claim-foot b{color:var(--sd-teal2);font-weight:600;display:inline-flex;gap:.6rem;align-items:center}

.sd-figs{position:relative;max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));border-top:1px solid var(--sd-line2)}
.sd-figs>div{padding:3.4rem 2.4rem 4rem;border-left:1px solid var(--sd-line2);display:flex;flex-direction:column}
.sd-figs>div:first-child{border-left:0;padding-left:0}
.sd-figs dd{font-size:clamp(3.4rem,4vw,4.8rem);font-weight:600;letter-spacing:-.05em;color:#fff}
.sd-figs dt{font-size:1.3rem;color:var(--sd-mute);margin-top:.6rem}

/* sections */
.sd-sec{padding:10rem 3rem 0}
.sd-sec>*{max-width:var(--max-w);margin-left:auto;margin-right:auto}
.sd-sec h2{font-size:clamp(3.4rem,4.8vw,5.8rem)}
.sd-about{border-top:1px solid var(--sd-line2);padding-top:4rem}
.sd-about h2{max-width:900px;margin-bottom:4rem}
.sd-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem}
.sd-cols p{font-size:1.6rem;line-height:1.75;color:var(--sd-soft)}

.sd-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:6rem;align-items:start}
.sd-split-head{position:sticky;top:calc(var(--nav-h) + 4rem)}
.sd-split-head h2{margin-bottom:3rem}
.sd-acc{display:grid;gap:1rem}
.sd-acc-item{border:1px solid var(--sd-line2);border-radius:16px;background:var(--sd-card);overflow:hidden;transition:border-color .3s}
.sd-acc-item[open]{border-color:rgba(25,201,174,.45)}
.sd-acc-item summary{display:flex;align-items:center;gap:1.6rem;padding:2.2rem 2.4rem;cursor:pointer;list-style:none}
.sd-acc-item summary::-webkit-details-marker{display:none}
.sd-acc-ico{width:44px;height:44px;border-radius:12px;background:rgba(25,201,174,.12);color:var(--sd-teal);display:flex;align-items:center;justify-content:center;font-size:1.7rem;flex-shrink:0}
.sd-acc-item summary b{font-size:1.9rem;font-weight:600;flex:1}
.sd-acc-x{color:var(--sd-mute);transition:transform .3s}
.sd-acc-item[open] .sd-acc-x{transform:rotate(45deg);color:var(--sd-teal)}
.sd-acc-body{padding:0 2.4rem 2.4rem 8.4rem}
.sd-acc-body p{font-size:1.55rem;line-height:1.65;color:var(--sd-soft)}
.sd-acc-body a{display:inline-flex;align-items:center;gap:.6rem;margin-top:1.4rem;font-weight:600;font-size:1.35rem;color:var(--sd-teal)}

.sd-hl{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.4rem}
.sd-hl>div{padding:2.8rem;border-radius:16px;background:var(--sd-card);border:1px solid var(--sd-line2)}
.sd-hl i{color:var(--sd-teal);font-size:2rem;margin-bottom:1.4rem;display:block}
.sd-hl h3{font-size:1.9rem}
.sd-hl p{font-size:1.4rem;color:var(--sd-soft);margin-top:.6rem}
.sd-rev{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.4rem}
.sd-rev figure{padding:2.8rem;border-radius:16px;background:var(--sd-card);border:1px solid var(--sd-line2)}
.sd-rev blockquote{font-size:1.6rem;line-height:1.6}
.sd-rev figcaption{margin-top:1.4rem;color:var(--sd-mute)}
.sd-gal{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.sd-gal-item{padding:0;border-radius:16px;overflow:hidden;aspect-ratio:4/3;cursor:zoom-in}
.sd-gal-item img{width:100%;height:100%;object-fit:cover}
body.d-shield .hours-card{max-width:none}
body.d-shield .hours-row{background:var(--sd-card);border-color:var(--sd-line2);border-radius:12px}

.sd-contact{display:grid;grid-template-columns:1fr 1fr;gap:5rem;padding:5rem;border-radius:28px;background:linear-gradient(135deg,#15282a,#101a1c);border:1px solid rgba(25,201,174,.25)}
.sd-contact h2{margin-bottom:2.4rem}
.sd-promise{display:grid;gap:1rem;margin-bottom:3rem}
.sd-promise li{display:flex;align-items:center;gap:1rem;font-size:1.5rem;color:var(--sd-soft)}
.sd-promise i{width:24px;height:24px;border-radius:50%;background:rgba(25,201,174,.18);color:var(--sd-teal);display:flex;align-items:center;justify-content:center;font-size:1.1rem}
body.d-shield .ci{background:rgba(255,255,255,.03);border-color:var(--sd-line2);border-radius:14px}
body.d-shield .ci-ico{background:rgba(25,201,174,.14);color:var(--sd-teal)}
body.d-shield .contact-form{background:rgba(14,20,22,.7);border-color:var(--sd-line2);border-radius:20px}
body.d-shield .contact-form h3{font-size:2.2rem;margin-bottom:2rem}
body.d-shield .cf-field input,body.d-shield .cf-field textarea{background:rgba(255,255,255,.04);border-color:var(--sd-line2);color:#fff;border-radius:10px}
body.d-shield .btn-onbiz{background:var(--sd-teal);color:#062320;border-radius:10px;text-transform:none;letter-spacing:0;font-size:1.5rem}
.sd-map{margin-top:3rem}
body.d-shield .biz-map{border-radius:20px;filter:invert(.9) hue-rotate(180deg) saturate(.5)}
.sd-share{max-width:var(--max-w);margin:5rem auto 0;padding:0 3rem}
body.d-shield .biz-share-btn{border-color:var(--sd-line2);color:var(--sd-soft)}
body.d-shield .bx-foot{background:#0a0f10;border-top-color:var(--sd-line2);margin-top:4rem}
body.d-shield .bx-foot-col h2{color:var(--sd-teal)}
body.d-shield .bx-foot .btn-onbiz{background:var(--sd-teal);color:#062320}
body.d-shield .btn-outline{border-color:var(--sd-line2);color:#fff}
body.d-shield .fx-cursor-ring{border-color:var(--sd-teal)}
body.d-shield .fx-cursor-dot{background:#fff}

@media (max-width:980px){
  .sd-hero-in,.sd-split,.sd-contact{grid-template-columns:1fr}
  .sd-split-head{position:static}
  .sd-claim{max-width:520px}
  .sd-contact{padding:3rem}
}
@media (max-width:640px){
  .sd-hero{padding:calc(var(--nav-h) + 3rem) 1.6rem 0}
  .sd-hero-in{padding-bottom:5rem}
  .sd-sec{padding:7rem 1.6rem 0}
  .sd-figs{grid-template-columns:1fr 1fr}
  .sd-figs>div{border-left:0;padding:2.2rem 0;border-top:1px solid var(--sd-line2)}
  .sd-acc-body{padding:0 2rem 2rem}
  .sd-gal{grid-template-columns:1fr}
  .sd-contact{padding:2rem}
  .sd-share{padding:0 1.6rem}
}
@media (prefers-reduced-motion:reduce){.sd-stage-dot,.sd-stages::after,.sd-claim-state{animation:none}.sd-stage-dot{background:var(--sd-teal);border-color:var(--sd-teal);color:#062320}.sd-stages::after{height:calc(100% - 5.8rem)}}
