:root{
  color-scheme:light;
  --color-navy-950:#06162e;
  --color-navy-900:#0b2344;
  --color-navy-850:#102a52;
  --color-navy-800:#16335f;
  --color-blue-700:#1d5fd0;
  --color-blue-500:#2f7cf6;
  --color-amber-500:#f3b23f;
  --color-amber-600:#d99210;
  --color-slate-950:#0f172a;
  --color-slate-800:#1e293b;
  --color-slate-700:#334155;
  --color-slate-600:#475569;
  --color-slate-500:#64748b;
  --color-slate-400:#94a3b8;
  --color-slate-300:#cbd5e1;
  --color-slate-200:#e2e8f0;
  --color-slate-100:#f1f5f9;
  --color-slate-50:#f8fafc;
  --color-white:#ffffff;
  --font-sans:"Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;
  --text-xs:0.8125rem;
  --text-sm:0.875rem;
  --text-base:1rem;
  --text-lg:1.125rem;
  --text-xl:1.25rem;
  --text-2xl:1.5rem;
  --text-3xl:2rem;
  --text-4xl:clamp(2.6rem,7.8vw,4.9rem);
  --space-1:0.25rem;
  --space-2:0.5rem;
  --space-3:0.75rem;
  --space-4:1rem;
  --space-5:1.25rem;
  --space-6:1.5rem;
  --space-8:2rem;
  --space-10:2.5rem;
  --space-12:3rem;
  --space-16:4rem;
  --space-18:4.5rem;
  --space-20:5rem;
  --space-24:6rem;
  --space-28:7rem;
  --radius-sm:0.9rem;
  --radius-md:1.2rem;
  --radius-lg:1.6rem;
  --radius-xl:2rem;
  --radius-pill:999px;
  --container:75rem;
  --header-height:4.5rem;
  --shadow-card:0 1.4rem 3.8rem rgb(7 26 53 / 0.08);
  --shadow-card-strong:0 1.8rem 4.5rem rgb(7 26 53 / 0.14);
  --shadow-cta:0 0.9rem 2.2rem rgb(243 178 63 / 0.25);
  --transition-fast:160ms ease;
  --transition-base:240ms cubic-bezier(.2,.8,.2,1);
}

*,
*::before,
*::after{box-sizing:border-box}

html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--header-height) + 1rem)
}

body{
  margin:0;
  min-width:20rem;
  background:
    radial-gradient(circle at top left,rgb(29 95 208 / 0.08),transparent 28rem),
    radial-gradient(circle at 80% 12%,rgb(243 178 63 / 0.08),transparent 26rem),
    linear-gradient(180deg,#ffffff 0%,#fbfcfe 36%,#f7f9fc 100%);
  color:var(--color-slate-950);
  font-family:var(--font-sans);
  font-size:var(--text-base);
  line-height:1.75;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased
}

body.menu-open{overflow:hidden}
img,svg{display:block;max-width:100%}
button,a{font:inherit}
a{color:inherit;text-decoration:none}
button{color:inherit}
h1,h2,h3,p,dl,dd,ol,ul{margin-top:0}
h1,h2,h3{line-height:1.08;letter-spacing:-0.04em}
h1{margin-bottom:var(--space-6);font-size:var(--text-4xl);font-weight:850}
h2{margin-bottom:var(--space-5);font-size:clamp(2rem,5vw,3rem);font-weight:850}
h3{margin-bottom:var(--space-3);font-size:var(--text-xl)}
p{margin-bottom:var(--space-5)}
:focus-visible{outline:3px solid var(--color-blue-500);outline-offset:3px}

.container{
  width:min(100% - 2.5rem,var(--container));
  margin-inline:auto
}

.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}

.skip-link{
  position:fixed;
  top:var(--space-3);
  left:var(--space-3);
  z-index:1000;
  padding:var(--space-3) var(--space-4);
  border-radius:var(--radius-sm);
  background:var(--color-white);
  color:var(--color-navy-950);
  box-shadow:var(--shadow-card);
  transform:translateY(-160%);
  transition:transform var(--transition-fast)
}

.skip-link:focus{transform:translateY(0)}

.site-header{
  position:sticky;
  top:0;
  z-index:100;
  height:var(--header-height);
  border-bottom:1px solid rgb(226 232 240 / 0.8);
  background:rgb(255 255 255 / 0.82);
  backdrop-filter:saturate(180%) blur(1.1rem)
}

.header-inner{
  display:flex;
  align-items:center;
  height:100%;
  gap:var(--space-6)
}

.brand{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  gap:var(--space-3)
}

.brand-logo{
  width:2.75rem;
  height:2.75rem;
  object-fit:contain
}

.brand-logo-lockup{width:9.5rem;height:auto}
.brand:has(.brand-logo-lockup) .brand-copy{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.brand-copy{display:flex;flex-direction:column;line-height:1.15}
.brand-copy strong{font-size:var(--text-lg);font-weight:850}
.brand-copy small{margin-top:0.2rem;color:var(--color-slate-600);font-size:var(--text-xs)}

.primary-navigation,.header-phone{display:none}

.menu-toggle{
  display:grid;
  width:2.75rem;
  height:2.75rem;
  margin-left:auto;
  padding:0.7rem;
  place-content:center;
  gap:0.28rem;
  border:1px solid var(--color-slate-200);
  border-radius:var(--radius-sm);
  background:var(--color-white);
  cursor:pointer;
  box-shadow:0 0.7rem 1.8rem rgb(7 26 53 / 0.06)
}

.menu-toggle span:not(.sr-only){
  width:1.2rem;
  height:2px;
  border-radius:var(--radius-pill);
  background:var(--color-navy-950);
  transition:transform var(--transition-fast),opacity var(--transition-fast)
}

.menu-toggle[aria-expanded="true"] span:nth-child(2){transform:translateY(0.38rem) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(3){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(4){transform:translateY(-0.38rem) rotate(-45deg)}

.primary-navigation.is-open{
  position:fixed;
  inset:var(--header-height) 0 auto;
  display:grid;
  padding:var(--space-5) 1.25rem var(--space-8);
  gap:var(--space-2);
  border-bottom:1px solid var(--color-slate-200);
  background:rgba(255,255,255,.96);
  box-shadow:var(--shadow-card-strong);
  backdrop-filter:blur(.9rem)
}

.primary-navigation.is-open a{
  padding:var(--space-3) var(--space-4);
  border-radius:var(--radius-sm);
  font-weight:750
}

.primary-navigation.is-open a:hover{background:var(--color-slate-50)}

.hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:var(--space-12) 0;
  border-bottom:1px solid #e8e1d4;
  background:#faf8f3;
  color:var(--color-slate-950)
}

.hero-pattern{
  position:absolute;
  top:-13rem;
  right:-10rem;
  z-index:-1;
  width:34rem;
  height:34rem;
  border-radius:50%;
  background:rgb(201 154 61 / .08)
}

.hero-pattern::after{
  position:absolute;
  inset:4rem;
  border:1px solid rgb(201 154 61 / .15);
  border-radius:50%;
  content:""
}

.hero-grid{
  display:grid;
  gap:var(--space-10)
}

.hero-content{max-width:43rem}

.hero-visual{
  position:relative;
  min-width:0;
  align-self:center
}

.hero-photo{
  position:relative;
  margin:0;
  padding:0 0 var(--space-5);
  background:transparent
}

.hero-photo::before{
  position:absolute;
  right:-.8rem;
  bottom:4.15rem;
  width:36%;
  height:52%;
  border-radius:var(--radius-md);
  background:#c99a3d;
  content:"";
  opacity:.72
}

.hero-photo img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  aspect-ratio:3/2;
  object-fit:cover;
  object-position:center 42%;
  border-radius:var(--radius-md);
  box-shadow:0 1.2rem 2.5rem rgb(27 38 49 / .14)
}

.hero-photo figcaption{
  position:relative;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  margin-top:var(--space-4);
  align-items:baseline;
  justify-content:space-between;
  gap:var(--space-4);
  color:var(--color-navy-950)
}

.hero-photo figcaption strong{font-size:var(--text-base)}
.hero-photo figcaption span{color:var(--color-slate-600);font-size:var(--text-sm)}

@keyframes hero-arrive{
  from{opacity:0;transform:translateY(1.25rem)}
  to{opacity:1;transform:translateY(0)}
}

@keyframes hero-photo-arrive{
  from{opacity:0;transform:translateY(1rem) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

@keyframes phone-breathe{
  0%,100%{box-shadow:0 .75rem 1.6rem rgb(11 35 68 / .16)}
  50%{box-shadow:0 .9rem 2rem rgb(11 35 68 / .24)}
}

@keyframes photo-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}

.motion-ready .hero-brand-name,
.motion-ready .hero h1{
  animation:hero-arrive .72s cubic-bezier(.16,1,.3,1) both
}

.motion-ready .hero h1{animation-delay:.08s}
.motion-ready .hero-summary{animation:hero-arrive .68s .2s cubic-bezier(.16,1,.3,1) both}
.motion-ready .hero-services{animation:hero-arrive .68s .28s cubic-bezier(.16,1,.3,1) both}
.motion-ready .hero-assurances{animation:hero-arrive .68s .36s cubic-bezier(.16,1,.3,1) both}
.motion-ready .hero-actions{animation:hero-arrive .68s .44s cubic-bezier(.16,1,.3,1) both}
.motion-ready .hero-local-info{animation:hero-arrive .68s .52s cubic-bezier(.16,1,.3,1) both}
.motion-ready .hero-visual{animation:hero-photo-arrive .9s .16s cubic-bezier(.16,1,.3,1) both}
.motion-ready .hero.is-motion-active .hero-photo{animation:photo-float 5.5s 1.2s ease-in-out infinite}

.hero-kicker,.section-kicker,.coordinate-label{
  margin-bottom:var(--space-4);
  color:var(--color-amber-500);
  font-size:var(--text-sm);
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase
}

.hero-brand-name{
  width:fit-content;
  margin-bottom:var(--space-4);
  padding-bottom:var(--space-2);
  border-bottom:2px solid #c99a3d;
  color:var(--color-navy-900);
  font-size:var(--text-xl);
  font-weight:900;
  letter-spacing:.04em
}

.hero h1{
  max-width:13ch;
  margin-bottom:var(--space-5);
  color:var(--color-navy-950);
  font-family:"Noto Serif SC","Songti SC","STSong","SimSun",serif;
  font-size:clamp(2.45rem,4.4vw,4.25rem);
  letter-spacing:-.03em;
  line-height:1.14;
  text-wrap:balance
}

.hero-summary{
  max-width:35rem;
  margin-bottom:var(--space-5);
  color:var(--color-slate-600);
  font-size:var(--text-lg);
  line-height:1.75
}

.hero-services{
  display:grid;
  max-width:34rem;
  margin:0 0 var(--space-5);
  padding:0;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-2) var(--space-6);
  list-style:none
}

.hero-services li{
  position:relative;
  padding:.35rem 0 .35rem 1.25rem;
  color:var(--color-navy-900);
  font-weight:800
}

.hero-services li::before{
  position:absolute;
  top:.9rem;
  left:0;
  width:.55rem;
  height:2px;
  background:#c99a3d;
  content:""
}

.hero-assurances{
  display:flex;
  margin:0 0 var(--space-6);
  padding:0;
  flex-wrap:wrap;
  gap:var(--space-3) var(--space-5);
  color:var(--color-slate-700);
  list-style:none
}
.hero-assurances li{
  position:relative;
  padding-left:1.25rem;
  font-weight:750
}
.hero-assurances li::before{
  position:absolute;
  top:.48rem;
  left:0;
  width:.55rem;
  height:.35rem;
  border-bottom:2px solid #a87825;
  border-left:2px solid #a87825;
  content:"";
  transform:rotate(-45deg)
}

.hero-actions{
  display:grid;
  margin-bottom:var(--space-6);
  gap:var(--space-3)
}

.button{
  display:inline-flex;
  min-height:3.5rem;
  align-items:center;
  justify-content:center;
  gap:var(--space-2);
  padding:0.85rem 1.35rem;
  border:1px solid transparent;
  border-radius:var(--radius-md);
  font-weight:850;
  line-height:1.2;
  transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast)
}

.button:hover{
  transform:translateY(-2px);
  box-shadow:0 1rem 2rem rgb(7 26 53 / 0.12)
}

.button:active{transform:translateY(0) scale(.985)}
.button-primary{
  background:var(--color-navy-900);
  box-shadow:0 .75rem 1.6rem rgb(11 35 68 / .16);
  color:var(--color-white)
}
.button-primary:hover{background:var(--color-navy-950)}
.motion-ready .hero.is-motion-active .button-primary{animation:phone-breathe 3s 1.1s ease-in-out infinite}
.motion-ready .hero.is-motion-active .button-primary:hover{animation-play-state:paused}
.button-secondary{
  border-color:#d8cfbf;
  background:transparent;
  color:var(--color-navy-900)
}
.button-secondary:hover{
  border-color:#bda873;
  background:#fffdf8
}
.button-dark{background:var(--color-navy-950);color:var(--color-white)}

.hero-local-info{
  max-width:39rem;
  padding-top:var(--space-5);
  border-top:1px solid #ded6c8
}
.hero-local-info p{
  display:grid;
  margin:0;
  grid-template-columns:5rem 1fr;
  gap:var(--space-3);
  color:var(--color-slate-600);
  font-size:var(--text-sm)
}
.hero-local-info p + p{margin-top:var(--space-2)}
.hero-local-info strong{color:var(--color-navy-900)}

.service-coordinate{
  position:relative;
  padding:var(--space-6);
  overflow:hidden;
  border:1px solid rgb(255 255 255 / 0.14);
  border-radius:var(--radius-xl);
  background:linear-gradient(180deg,rgb(255 255 255 / 0.1),rgb(255 255 255 / 0.05));
  box-shadow:inset 0 1px 0 rgb(255 255 255 / 0.08),0 1.25rem 3rem rgb(0 0 0 / 0.16)
}

.service-coordinate::before{
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  background:linear-gradient(135deg,rgb(255 255 255 / 0.08),transparent 30%,rgb(255 255 255 / 0.03));
  content:"";
  pointer-events:none
}

.coordinate-city{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  padding-bottom:var(--space-5);
  border-bottom:1px solid rgb(255 255 255 / 0.12)
}

.coordinate-city strong{font-size:var(--text-3xl)}
.coordinate-city span{color:rgb(255 255 255 / .66);font-size:var(--text-sm)}

.coordinate-address{
  display:grid;
  grid-template-columns:auto 1fr;
  margin-top:var(--space-6);
  gap:var(--space-4)
}

.coordinate-pin{
  position:relative;
  width:1.5rem;
  height:1.5rem;
  border:2px solid var(--color-amber-500);
  border-radius:50% 50% 50% 0;
  transform:rotate(-45deg)
}
.coordinate-pin::after{
  position:absolute;
  inset:0.35rem;
  border-radius:50%;
  background:var(--color-amber-500);
  content:""
}

.coordinate-address small{color:rgb(255 255 255 / .64)}
.coordinate-address p{margin:.25rem 0 0;font-size:var(--text-sm);line-height:1.7}

.coordinate-notes{
  display:grid;
  margin:var(--space-6) 0 0;
  padding:0;
  gap:var(--space-3);
  list-style:none
}

.coordinate-notes li{
  position:relative;
  padding-left:var(--space-5);
  color:rgb(255 255 255 / .78);
  font-size:var(--text-sm)
}
.coordinate-notes li::before{
  position:absolute;
  top:.72rem;
  left:0;
  width:.4rem;
  height:.4rem;
  border-radius:50%;
  background:var(--color-amber-500);
  content:""
}

.section{
  position:relative;
  padding:var(--space-18) 0
}

.section-heading{
  max-width:43rem;
  margin-bottom:var(--space-10)
}
.section-heading p:last-child,
.area-copy > p,
.faq-intro > p,
.process-intro > p{color:var(--color-slate-600)}

.entity-section,.trust-section,.faq-section{background:linear-gradient(180deg,var(--color-slate-50),#ffffff)}
.quick-answer-section{background:linear-gradient(180deg,#ffffff,#fbfcfe)}

.quick-answer-list{
  display:grid;
  margin-bottom:0;
  border-top:1px solid var(--color-slate-300)
}
.quick-answer-item{
  display:grid;
  padding:var(--space-6) 0;
  gap:var(--space-3);
  border-bottom:1px solid var(--color-slate-300)
}
.quick-answer-item dt{
  color:var(--color-slate-950);
  font-size:var(--text-lg);
  font-weight:850
}
.quick-answer-item dd{
  max-width:52rem;
  margin:0;
  color:var(--color-slate-600)
}
.urgent-section{padding-top:var(--space-14);padding-bottom:var(--space-14)}
.urgent-section .section-heading{margin-bottom:var(--space-6)}
.urgent-list{grid-template-columns:1fr}
.urgent-list .quick-answer-item{align-content:start}
.urgent-list a{
  display:inline-block;
  margin-left:var(--space-2);
  color:var(--color-blue-700);
  font-weight:850;
  text-decoration:underline;
  text-underline-offset:.22em
}

.entity-layout{display:grid;gap:var(--space-6)}

.entity-facts{
  display:grid;
  margin-bottom:0;
  border:1px solid var(--color-slate-200);
  border-radius:var(--radius-xl);
  background:var(--color-white);
  overflow:hidden;
  box-shadow:var(--shadow-card)
}
.entity-facts div{
  display:grid;
  grid-template-columns:6.5rem 1fr;
  padding:var(--space-4) var(--space-5);
  gap:var(--space-4);
  border-bottom:1px solid var(--color-slate-200)
}
.entity-facts div:last-child{border-bottom:0}
.entity-facts dt{color:var(--color-slate-600);font-size:var(--text-sm)}
.entity-facts dd{margin:0;font-weight:750}
.entity-facts a,.inline-phone{
  color:var(--color-blue-700);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.25em
}

.credential-summary{
  display:grid;
  align-content:start;
  padding:var(--space-6);
  gap:var(--space-6);
  border-radius:var(--radius-xl);
  background:linear-gradient(180deg,var(--color-navy-950),var(--color-navy-900));
  color:var(--color-white);
  box-shadow:var(--shadow-card-strong)
}
.credential-summary p,.credential-summary li{color:rgb(255 255 255 / .72)}
.credential-summary ul{margin-bottom:0;padding-left:1.25rem}
.credential-seal{
  display:grid;
  width:7.5rem;
  height:7.5rem;
  place-content:center;
  border:1px solid rgb(243 178 63 / .45);
  border-radius:50%;
  color:var(--color-amber-500);
  text-align:center;
  box-shadow:inset 0 0 0 1px rgb(255 255 255 / 0.05)
}
.credential-seal span{font-size:var(--text-sm)}
.credential-seal strong{font-size:var(--text-xl)}

.service-list{display:grid;gap:var(--space-4)}
.service-item{
  display:grid;
  padding:var(--space-4);
  grid-template-columns:6.5rem minmax(0,1fr);
  align-items:start;
  gap:var(--space-3) var(--space-4);
  border:1px solid var(--color-slate-200);
  border-radius:var(--radius-md);
  background:var(--color-white);
  box-shadow:0 .65rem 1.6rem rgb(7 26 53 / .06);
  transition:transform var(--transition-base),box-shadow var(--transition-base)
}
.service-item:hover{transform:translateY(-6px);box-shadow:0 1.2rem 2.5rem rgb(7 26 53 / .13)}
.service-media{grid-row:1/4;margin:0;overflow:hidden;border-radius:var(--radius-sm);background:var(--color-slate-100)}
.service-media img{display:block;width:100%;height:6.75rem;object-fit:cover}
.service-item > :not(.service-media){margin:0}
.service-item .service-number{grid-column:2}
.service-item .service-copy{grid-column:2}
.service-item .service-call{grid-column:2}
.service-number{
  display:inline-flex;
  width:fit-content;
  align-items:center;
  justify-content:center;
  padding:.35rem .7rem;
  border-radius:var(--radius-pill);
  background:rgb(29 95 208 / .08);
  color:var(--color-blue-700);
  font-size:var(--text-xs);
  font-weight:850;
  letter-spacing:.08em
}
.service-copy h3{margin-bottom:var(--space-2);font-size:clamp(1.4rem,3.8vw,2rem)}
.service-problem{
  margin-bottom:var(--space-1);
  color:var(--color-slate-600);
  font-size:var(--text-sm);
  font-weight:700
}
.service-copy > p:last-child{max-width:44rem;margin-bottom:0;color:var(--color-slate-600)}
.service-call{
  display:inline-flex;
  width:fit-content;
  align-items:center;
  gap:var(--space-2);
  color:var(--color-blue-700);
  font-size:var(--text-sm);
  font-weight:850
}
.service-call strong{color:var(--color-navy-950)}

.case-section{background:#fffdf8}
.case-list{gap:var(--space-8)}
.case-record{
  padding:0;
  grid-template-columns:1fr;
  overflow:hidden;
  border-radius:var(--radius-sm);
  box-shadow:none
}
.case-record:hover{transform:translateY(-2px);box-shadow:0 1rem 2.25rem rgb(7 26 53 / .08)}
.case-record .service-media{grid-row:auto;grid-column:1;border-radius:0}
.case-record .service-media img{height:100%;min-height:17rem}
.case-record .service-number{grid-column:1;margin:var(--space-6) var(--space-6) 0}
.case-record .service-copy{grid-column:1;padding:0 var(--space-6)}
.case-record .service-call{grid-column:1;margin:0 var(--space-6) var(--space-6)}

.trust-grid{display:grid;gap:var(--space-4)}
.trust-item{
  padding:var(--space-6);
  border:1px solid var(--color-slate-200);
  border-radius:var(--radius-lg);
  background:var(--color-white);
  box-shadow:var(--shadow-card);
  transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)
}
.trust-item:hover{
  transform:translateY(-3px);
  border-color:rgb(29 95 208 / .24);
  box-shadow:var(--shadow-card-strong)
}
.trust-check{
  position:relative;
  display:grid;
  width:2.5rem;
  height:2.5rem;
  margin-bottom:var(--space-5);
  place-items:center;
  border-radius:var(--radius-sm);
  background:linear-gradient(180deg,var(--color-navy-950),var(--color-navy-900))
}
.trust-check::before{
  width:.75rem;
  height:.4rem;
  border-bottom:2px solid var(--color-amber-500);
  border-left:2px solid var(--color-amber-500);
  content:"";
  transform:translateY(-.12rem) rotate(-45deg)
}
.trust-item p{margin-bottom:0;color:var(--color-slate-600);font-size:var(--text-sm)}

.process-block{
  display:grid;
  margin-top:var(--space-16);
  padding-top:var(--space-12);
  gap:var(--space-8);
  border-top:1px solid var(--color-slate-200)
}
.process-list{
  display:grid;
  margin-bottom:0;
  padding:0;
  gap:var(--space-3);
  list-style:none
}
.process-list li{
  display:grid;
  grid-template-columns:2.75rem 1fr;
  padding:var(--space-4);
  align-items:start;
  gap:var(--space-4);
  border:1px solid var(--color-slate-200);
  border-radius:var(--radius-lg);
  background:var(--color-white);
  box-shadow:var(--shadow-card)
}
.process-list li > span{
  display:grid;
  width:2.75rem;
  height:2.75rem;
  place-items:center;
  border-radius:var(--radius-sm);
  background:linear-gradient(180deg,#ffd977,var(--color-amber-500));
  color:var(--color-navy-950);
  font-weight:900
}
.process-list strong{display:block}
.process-list p{margin:var(--space-1) 0 0;color:var(--color-slate-600);font-size:var(--text-sm)}
.process-section{background:var(--color-slate-50)}
.process-section .process-block{margin-top:0;padding-top:0;border-top:0}

.motion-ready .scroll-reveal{
  opacity:0;
  transform:translateY(1.5rem);
  transition:opacity .68s cubic-bezier(.16,1,.3,1),transform .68s cubic-bezier(.16,1,.3,1)
}

.motion-ready .scroll-reveal.is-visible{
  opacity:1;
  transform:translateY(0)
}

.motion-ready .service-list.scroll-reveal{transition-delay:.08s}
.motion-ready .trust-grid.scroll-reveal{transition-delay:.08s}
.motion-ready .process-block.scroll-reveal{transition-delay:.04s}

.area-layout{display:grid;gap:var(--space-8)}
.area-copy{align-self:center}
.area-map{
  position:relative;
  min-height:31rem;
  padding:var(--space-5);
  overflow:hidden;
  border:1px solid rgb(255 255 255 / 0.08);
  border-radius:var(--radius-xl);
  background:
    radial-gradient(circle at 50% 50%,rgb(243 178 63 / .18),transparent 10rem),
    linear-gradient(180deg,var(--color-navy-950),var(--color-navy-900));
  color:var(--color-white);
  box-shadow:var(--shadow-card-strong)
}
.area-map::before,.area-map::after{
  position:absolute;
  border:1px solid rgb(255 255 255 / .08);
  border-radius:48% 52% 64% 36% / 43% 35% 65% 57%;
  content:"";
  transform:rotate(-8deg)
}
.area-map::before{inset:10% 12%}
.area-map::after{inset:18% 20%}
.map-center{
  position:absolute;
  top:44%;
  left:50%;
  z-index:2;
  display:flex;
  width:7.5rem;
  height:7.5rem;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid rgb(243 178 63 / .55);
  border-radius:50%;
  background:rgb(243 178 63 / .14);
  color:var(--color-amber-500);
  text-align:center;
  transform:translate(-50%,-50%);
  box-shadow:0 1rem 2rem rgb(0 0 0 / 0.12)
}
.map-center span{font-size:var(--text-xs)}
.map-center strong{font-size:var(--text-xl)}
.area-map ul{
  position:relative;
  z-index:3;
  display:grid;
  margin:0;
  padding:0;
  grid-template-columns:repeat(2,1fr);
  gap:var(--space-3);
  list-style:none
}
.area-map li{
  padding:.7rem var(--space-3);
  border:1px solid rgb(255 255 255 / .12);
  border-radius:var(--radius-sm);
  background:rgb(255 255 255 / .06);
  color:rgb(255 255 255 / .78);
  font-size:var(--text-sm);
  text-align:center;
  backdrop-filter:blur(.35rem)
}
.area-map li:nth-child(5){
  border-color:rgb(243 178 63 / .55);
  color:var(--color-amber-500)
}

.faq-layout{display:grid;gap:var(--space-10)}
.faq-intro .button{margin-top:var(--space-3)}
.faq-list{border-top:1px solid var(--color-slate-300)}
.faq-item{border-bottom:1px solid var(--color-slate-300)}
.faq-item summary{
  display:grid;
  min-height:4.75rem;
  padding:var(--space-5) 0;
  align-items:center;
  grid-template-columns:1fr auto;
  gap:var(--space-4);
  cursor:pointer;
  font-size:var(--text-lg);
  font-weight:850;
  list-style:none
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-icon{position:relative;width:1.5rem;height:1.5rem}
.faq-icon::before,.faq-icon::after{
  position:absolute;
  top:50%;
  left:50%;
  width:.9rem;
  height:2px;
  border-radius:var(--radius-pill);
  background:var(--color-blue-700);
  content:"";
  transform:translate(-50%,-50%);
  transition:transform var(--transition-fast)
}
.faq-icon::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-item[open] .faq-icon::after{transform:translate(-50%,-50%) rotate(0)}
.faq-answer{padding:0 2.5rem var(--space-5) 0;color:var(--color-slate-600)}
.faq-answer p{margin-bottom:0}

.final-cta{
  padding:var(--space-16) 0;
  background:
    radial-gradient(circle at right top,rgb(243 178 63 / .16),transparent 18rem),
    linear-gradient(180deg,var(--color-navy-900),var(--color-navy-950));
  color:var(--color-white)
}

.content-update{
  padding:var(--space-5) 0;
  border-top:1px solid var(--color-slate-200);
  background:var(--color-slate-50)
}
.content-update-inner{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-2) var(--space-6)
}
.content-update p{margin:0;color:var(--color-slate-600);font-size:var(--text-sm)}

.final-cta-inner{
  display:grid;
  align-items:center;
  gap:var(--space-8)
}
.final-cta h2{max-width:42rem}
.final-cta p:not(.section-kicker){margin-bottom:0;color:rgb(255 255 255 / .68)}
.button-phone-large{
  display:grid;
  justify-self:start;
  min-width:min(100%,18rem);
  padding:var(--space-4) var(--space-6);
  text-align:left
}
.button-phone-large span{font-size:var(--text-sm)}
.button-phone-large strong{font-size:var(--text-xl)}

.site-footer{
  padding:var(--space-16) 0 6.5rem;
  background:var(--color-navy-950);
  color:var(--color-white)
}
.footer-grid{display:grid;gap:var(--space-10)}
.brand-footer .brand-copy small{color:rgb(255 255 255 / .58)}
.footer-entity p{
  max-width:32rem;
  margin-bottom:var(--space-2);
  color:rgb(255 255 255 / .62);
  font-size:var(--text-sm)
}
.footer-entity .brand{margin-bottom:var(--space-5)}
.footer-grid h2{margin-bottom:var(--space-4);font-size:var(--text-base);letter-spacing:0}
.footer-grid ul{
  display:grid;
  margin:0;
  padding:0;
  gap:var(--space-2);
  list-style:none
}
.footer-grid li,.footer-grid a{color:rgb(255 255 255 / .62);font-size:var(--text-sm)}
.footer-grid a:hover{color:var(--color-white)}
.footer-bottom{
  margin-top:var(--space-12);
  padding-top:var(--space-6);
  border-top:1px solid rgb(255 255 255 / .1)
}
.footer-bottom{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:var(--space-2) var(--space-6)
}
.footer-bottom p{margin-bottom:0;color:rgb(255 255 255 / .5);font-size:var(--text-xs)}

.mobile-call-bar{
  position:fixed;
  right:var(--space-3);
  bottom:calc(var(--space-3) + env(safe-area-inset-bottom));
  left:var(--space-3);
  z-index:90;
  display:flex;
  min-height:3.75rem;
  align-items:center;
  justify-content:space-between;
  padding:.75rem var(--space-5);
  border:1px solid rgb(255 255 255 / .14);
  border-radius:var(--radius-lg);
  background:linear-gradient(180deg,#ffd46f,var(--color-amber-500));
  box-shadow:0 1rem 3rem rgb(7 26 53 / .22);
  color:var(--color-navy-950);
  line-height:1.2;
  transition:transform var(--transition-base),opacity var(--transition-base),box-shadow var(--transition-base)
}
.mobile-call-bar:hover{box-shadow:0 1.2rem 3.4rem rgb(7 26 53 / .28)}
.mobile-call-bar span{font-size:var(--text-sm);font-weight:750}
.mobile-call-bar strong{font-size:var(--text-lg)}
.mobile-call-bar.is-hidden{
  pointer-events:none;
  opacity:0;
  transform:translateY(calc(100% + 2rem))
}

.breadcrumb{border-bottom:1px solid var(--color-slate-200);background:var(--color-white)}
.breadcrumb ol{
  display:flex;
  min-height:3.25rem;
  margin:0;
  padding:0;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--space-2);
  color:var(--color-slate-600);
  font-size:var(--text-sm);
  list-style:none
}
.breadcrumb li + li::before{margin-right:var(--space-2);color:var(--color-slate-400);content:"/"}
.breadcrumb a:hover{color:var(--color-blue-700)}

.subpage-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:var(--space-16) 0;
  background:var(--color-navy-950);
  color:var(--color-white)
}
.subpage-hero-grid{display:grid;gap:var(--space-10)}
.subpage-answer{max-width:46rem;color:rgb(255 255 255 / .78);font-size:var(--text-lg)}
.answer-panel{
  align-self:end;
  padding:var(--space-6);
  border:1px solid rgb(255 255 255 / .15);
  border-radius:var(--radius-lg);
  background:rgb(255 255 255 / .07)
}
.answer-panel span{
  display:block;
  margin-bottom:var(--space-3);
  color:var(--color-amber-500);
  font-size:var(--text-sm);
  font-weight:800
}
.answer-panel p{margin:0;color:rgb(255 255 255 / .76)}

.service-entity-section{
  padding:var(--space-6) 0;
  border-bottom:1px solid var(--color-slate-200);
  background:var(--color-slate-50)
}
.service-entity-grid{
  display:grid;
  margin:0;
  gap:var(--space-4)
}
.service-entity-grid div{
  display:grid;
  grid-template-columns:5rem 1fr;
  gap:var(--space-3)
}
.service-entity-grid dt{color:var(--color-slate-600);font-size:var(--text-sm)}
.service-entity-grid dd{margin:0;font-weight:800}
.service-entity-grid a{
  color:var(--color-blue-700);
  text-decoration:underline;
  text-underline-offset:.2em
}

.catalog-grid,.scenario-grid{display:grid;gap:var(--space-4)}
.catalog-card,.info-card{
  display:flex;
  min-height:17rem;
  padding:var(--space-6);
  flex-direction:column;
  border:1px solid var(--color-slate-200);
  border-radius:var(--radius-md);
  background:var(--color-white);
  box-shadow:var(--shadow-card)
}
.area-link-card{
  color:inherit;
  text-decoration:none;
  transition:border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease
}
.area-link-card:hover,.area-link-card:focus-visible{
  border-color:rgb(21 86 184 / .45);
  box-shadow:var(--shadow-card-strong);
  transform:translateY(-2px)
}
.area-link-label{
  width:fit-content;
  margin-bottom:var(--space-4);
  padding:.25rem .6rem;
  border-radius:var(--radius-pill);
  background:rgb(21 86 184 / .1);
  color:var(--color-blue-700);
  font-size:var(--text-xs);
  font-weight:800
}
.area-link-card strong{
  margin-top:auto;
  padding-top:var(--space-4);
  color:var(--color-blue-700)
}
.catalog-card-featured{
  border-color:rgb(21 86 184 / .35);
  box-shadow:var(--shadow-card-strong)
}
.catalog-status{
  width:fit-content;
  margin-bottom:var(--space-6);
  padding:.25rem .6rem;
  border-radius:var(--radius-pill);
  background:rgb(21 86 184 / .1);
  color:var(--color-blue-700);
  font-size:var(--text-xs);
  font-weight:800
}
.catalog-status-muted{background:var(--color-slate-100);color:var(--color-slate-600)}
.catalog-card p,.info-card p,.content-card-list p{color:var(--color-slate-600)}
.catalog-intent{font-weight:700}
.catalog-link,.catalog-pending{
  margin-top:auto;
  padding-top:var(--space-4);
  color:var(--color-blue-700);
  font-size:var(--text-sm);
  font-weight:800
}
.catalog-pending{color:var(--color-slate-400)}
.service-content-section,.service-area-section{background:var(--color-slate-50)}
.split-heading,.notice-layout,.service-area-layout{display:grid;gap:var(--space-10)}
.content-card-list{border-top:1px solid var(--color-slate-300)}
.content-card-list article{padding:var(--space-6) 0;border-bottom:1px solid var(--color-slate-300)}
.content-card-list article p{margin-bottom:0}
.notice-list,.service-area-list{
  display:grid;
  margin:0;
  padding:0;
  gap:var(--space-3);
  list-style:none
}
.notice-list li{
  position:relative;
  padding:var(--space-5) var(--space-5) var(--space-5) 3.25rem;
  border:1px solid var(--color-slate-200);
  border-radius:var(--radius-md);
  background:var(--color-white)
}
.notice-list li::before{
  position:absolute;
  top:var(--space-5);
  left:var(--space-5);
  display:grid;
  width:1.5rem;
  height:1.5rem;
  place-items:center;
  border-radius:50%;
  background:var(--color-navy-950);
  color:var(--color-amber-500);
  content:"i";
  font-size:var(--text-xs);
  font-weight:900
}
.service-area-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.service-area-list li{
  padding:var(--space-4);
  border:1px solid var(--color-slate-200);
  border-radius:var(--radius-sm);
  background:var(--color-white);
  font-weight:800
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,
  *::before,
  *::after{scroll-behavior:auto !important;transition-duration:.01ms !important;animation-duration:.01ms !important;animation-iteration-count:1 !important}
  .motion-ready .scroll-reveal{opacity:1;transform:none}
}

@media (min-width:36rem){
  .hero-actions{display:flex;flex-wrap:wrap}
  .button{width:auto}
  .area-map ul{grid-template-columns:repeat(3,1fr)}
  .service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .urgent-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .urgent-list .quick-answer-item:nth-child(odd){padding-right:var(--space-6)}
  .urgent-list .quick-answer-item:nth-child(even){padding-left:var(--space-6)}
}

@media (min-width:48rem){
  .container{width:min(100% - 4rem,var(--container))}
  .section{padding:var(--space-24) 0}
  .hero{padding:var(--space-16) 0}
  .hero-grid{grid-template-columns:minmax(0,58fr) minmax(22rem,42fr);align-items:center;gap:6%;min-height:34rem}
  .hero-photo img{height:clamp(25rem,34vw,31rem);aspect-ratio:auto}
  .entity-layout{grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr)}
  .entity-facts{grid-template-columns:repeat(2,1fr)}
  .entity-facts div{border-right:1px solid var(--color-slate-200)}
  .entity-facts div:nth-child(even){border-right:0}
  .entity-facts div:nth-last-child(-n+2){border-bottom:0}
  .entity-facts .entity-address{grid-column:1/-1;border-right:0}
  .entity-facts .entity-address:first-of-type{border-bottom:1px solid var(--color-slate-200)}
  .credential-summary{grid-template-columns:auto 1fr;align-items:center}
  .trust-grid{grid-template-columns:repeat(2,1fr)}
  .process-block{grid-template-columns:minmax(16rem,.65fr) minmax(0,1.35fr);gap:var(--space-16)}
  .process-list{grid-template-columns:repeat(2,1fr)}
  .case-list{grid-template-columns:1fr}
  .case-record{grid-template-columns:minmax(14rem,.9fr) minmax(0,1.1fr)}
  .case-record .service-media{grid-row:1/5;grid-column:1}
  .case-record .service-number,
  .case-record .service-copy,
  .case-record .service-call{grid-column:2}
  .area-layout{grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);gap:var(--space-16)}
  .area-copy{padding-right:var(--space-6)}
  .faq-layout{grid-template-columns:minmax(15rem,.7fr) minmax(0,1.3fr);gap:var(--space-16)}
  .faq-intro{position:sticky;top:calc(var(--header-height) + var(--space-8));align-self:start}
  .final-cta-inner{grid-template-columns:1fr auto}
  .button-phone-large{justify-self:end}
  .footer-grid{grid-template-columns:2fr repeat(3,1fr)}
  .service-entity-grid{grid-template-columns:repeat(4,1fr)}
  .service-entity-grid div{display:block}
  .service-entity-grid dd{margin-top:var(--space-1)}
  .service-entity-wide{grid-column:1/-1}
  .catalog-grid,.scenario-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .split-heading,.notice-layout,.service-area-layout{grid-template-columns:minmax(15rem,.7fr) minmax(0,1.3fr);gap:var(--space-16)}
  .service-area-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (min-width:64rem){
  .site-header{height:5rem}
  .header-inner{gap:var(--space-8)}
  .menu-toggle{display:none}
  .primary-navigation{
    display:flex;
    margin-left:auto;
    align-items:center;
    gap:var(--space-6)
  }
  .primary-navigation a{
    position:relative;
    padding:0.4rem 0;
    color:var(--color-slate-700);
    font-size:var(--text-sm);
    font-weight:750
  }
  .primary-navigation a::after{
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    height:2px;
    border-radius:var(--radius-pill);
    background:var(--color-blue-700);
    content:"";
    transform:scaleX(0);
    transform-origin:right;
    transition:transform var(--transition-fast)
  }
  .primary-navigation a:hover::after,
  .primary-navigation a[aria-current="page"]::after{
    transform:scaleX(1);
    transform-origin:left
  }
  .header-phone{
    display:flex;
    min-height:3rem;
    flex-direction:column;
    justify-content:center;
    padding:.35rem 1rem;
    border-radius:var(--radius-sm);
    background:linear-gradient(180deg,#ffd46f,var(--color-amber-500));
    color:var(--color-navy-950);
    line-height:1.15;
    box-shadow:0 .8rem 1.8rem rgb(243 178 63 / .18)
  }
  .header-phone span{font-size:.72rem;font-weight:700}
  .header-phone strong{font-size:var(--text-sm)}
  .brand-logo-lockup{width:10rem}
  .service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust-grid{grid-template-columns:repeat(4,1fr)}
  .process-block{grid-template-columns:minmax(16rem,.65fr) minmax(0,1.35fr);gap:var(--space-16)}
  .process-list{grid-template-columns:repeat(3,1fr)}
  .process-section .process-list{grid-template-columns:repeat(5,minmax(0,1fr))}
  .site-footer{padding-bottom:var(--space-10)}
  .mobile-call-bar{display:none}
  .subpage-hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr);align-items:center;gap:var(--space-16)}
  .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .scenario-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media (max-width:22.5rem){
  .container{width:min(100% - 2rem,var(--container))}
  .brand-copy small{display:none}
  .entity-facts div{grid-template-columns:1fr;gap:var(--space-1)}
  .service-call{display:grid}
  .mobile-call-bar{right:var(--space-2);left:var(--space-2);padding-inline:var(--space-4)}
  .hero h1{font-size:2.15rem;letter-spacing:-.04em}
  .button{width:100%}
  .hero-actions{gap:var(--space-3)}
  .hero{padding-top:var(--space-10)}
}
