/* Presentation only: the documents, amounts and accessible text stay unchanged. */
.hero{position:relative;isolation:isolate;background:linear-gradient(120deg,var(--cream) 20%,#edf2e5 100%)}
.hero-atmosphere{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.ambient-orbit{position:absolute;display:block;border:1px solid #739d7a25;border-radius:50%;width:800px;height:800px;right:-160px;top:-210px}
.orbit-one{background:radial-gradient(ellipse at 60% 50%,#afc88b20,transparent 62%);animation:orbit-drift 20s ease-in-out infinite alternate}
.orbit-two{width:580px;height:580px;right:-50px;top:-100px;border-color:#739d7a18;animation:orbit-drift 24s ease-in-out infinite alternate-reverse}
.ambient-line{position:absolute;inset:0;background-image:linear-gradient(90deg,#2f665607 1px,transparent 1px);background-size:100px 100%;mask-image:linear-gradient(90deg,transparent 35%,#000);opacity:.6}
.hero-copy{position:relative;z-index:2}
.hero h1>span:last-child{position:relative;display:inline-block}
.hero h1>span:last-child:after{content:"";display:block;position:absolute;left:0;right:0;bottom:.01em;height:.2em;background:#b8cc8b42;z-index:-1;border-radius:2px}
.rhythm-visual{background:linear-gradient(145deg,#102f29,var(--green) 48%,var(--green-mid));border:1px solid #ffffff66;box-shadow:0 35px 70px -28px #183f3759,0 1px 0 #ffffff80 inset}
.rhythm-aura{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}
.rhythm-aura:before{content:"";position:absolute;width:430px;height:430px;right:-220px;top:-185px;border:1px solid #cfe1ab1f;border-radius:50%;box-shadow:0 0 0 50px #cfe1ab06,0 0 0 100px #cfe1ab05;background:radial-gradient(circle,#cfe1ab10,transparent 66%);animation:aura-breathe 9s ease-in-out infinite alternate}
.rhythm-monitor{background-image:linear-gradient(#d6e6c30d 1px,transparent 1px),linear-gradient(90deg,#d6e6c30d 1px,transparent 1px);background-color:#09271e30}
.rhythm-monitor:after{content:"";position:absolute;inset-block:0;left:0;width:28%;background:linear-gradient(90deg,transparent,#d5edab0b);border-right:1px solid #d5edab45;transform:translateX(-110%);animation:monitor-scan 5.6s linear infinite;pointer-events:none}
.wave-trace{stroke:#e4f9b8;stroke-width:2.5}
.wave-base{opacity:.27}
.rhythm-visual .review-note{border-color:#dfe7d6;box-shadow:0 18px 35px #0b29232e;animation:note-float 7s ease-in-out infinite}
.rhythm-footer button{background:#ffffff10;min-height:36px;padding-inline:12px;transition:background .2s}
.rhythm-footer button:hover{background:#ffffff20}
.rhythm-footer button:disabled{cursor:default;opacity:.7}
.trust-strip{position:relative}
.case-section{position:relative;background:var(--paper);border-bottom:1px solid var(--line);overflow:hidden}
.case-section:before{content:"";position:absolute;inset:0 0 auto;height:330px;pointer-events:none;background:radial-gradient(ellipse at 90% 0%,#e9efdd 0%,transparent 65%)}
.case-layout{position:relative}
.case-copy{align-items:center}
.case-copy>.case-outcome{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--green),#12392f);color:#fff;border-color:#305c49;box-shadow:0 20px 45px -18px #183f3750;padding:30px 32px;border-radius:18px;isolation:isolate}
.case-outcome:before{content:"";position:absolute;width:270px;height:270px;right:-150px;top:-180px;border-radius:50%;border:1px solid #e5eecf28;box-shadow:0 0 0 35px #e5eecf06,0 0 0 70px #e5eecf04;z-index:-1;pointer-events:none}
.case-result-symbol{display:flex;align-items:center;gap:8px;color:#d9e9b7;font-size:12px;letter-spacing:.025em;margin-bottom:23px}
.case-result-symbol svg{border:1px solid #bfd69960;border-radius:50%;padding:4px;width:25px;height:25px}
.case-outcome .case-amount{border-color:#ffffff23;padding-bottom:20px}
.case-outcome .case-amount>span{color:#d8e1d2;font-size:13px}
.case-outcome .case-amount strong{color:#edf4cf;font-size:calc(var(--type-scale,1)*clamp(34px,3.6vw,51px));font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.055em;line-height:1.65}
.case-outcome .case-amount small{font-size:12px;color:#ccdac8;line-height:1.8}
.case-outcome .case-total{color:#d7e0d3;font-size:13px;line-height:1.85}
.case-outcome .button{background:#e5eecf;border-color:#e5eecf;color:#183f37;width:100%;justify-content:space-between}
.case-outcome .button:hover{background:#f4f8e9;border-color:#f4f8e9}
.case-outcome .case-detail-link{color:#dfebd4;font-size:13px;justify-content:center}
.case-previews .document-card{box-shadow:0 15px 40px -20px #183f3733;border-color:#d6dfd3}
.case-previews .document-card figcaption{background:linear-gradient(110deg,#f0f4ec,#fafbf7)}
.representative-surface{box-shadow:0 20px 60px -40px #183f3760}
.review-process{position:relative}
.review-process li>span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1px solid #b4c3a8;background:var(--paper);color:var(--green);font-variant-numeric:tabular-nums}
.consult-section{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#12362d,var(--green),#2c5947)}
.consult-section:before{content:"";position:absolute;right:-110px;top:-210px;width:620px;height:620px;border:1px solid #e5eecf16;border-radius:50%;box-shadow:0 0 0 80px #e5eecf04,0 0 0 160px #e5eecf03;z-index:-1;pointer-events:none}
.button{position:relative;overflow:hidden;transition:background .2s,transform .2s,box-shadow .2s}
.button .icon{transition:transform .25s ease}
.button:after{content:"";position:absolute;inset:-100% auto -100% -55%;width:30%;background:linear-gradient(90deg,transparent,#ffffff25,transparent);transform:rotate(20deg);pointer-events:none}
.coverage-cards article,.issue-card,.policy-guide-link{transition:border-color .25s,box-shadow .25s,transform .25s}
.faq-list summary>span:last-child{transition:transform .25s,color .25s}
.faq-list details[open] summary>span:last-child{transform:rotate(45deg);color:var(--green-mid)}
.site-header nav a{position:relative}
.site-header nav a:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:2px;background:var(--green-mid);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.site-header nav a:hover:after,.site-header nav a:focus-visible:after{transform:scaleX(1)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .button:hover{box-shadow:0 8px 20px #173b3420}.button:hover .icon{transform:translateX(3px)}
 .button:hover:after{animation:button-sheen .65s ease-out}
 .coverage-cards article:hover,.issue-card:hover{border-color:#91a484;box-shadow:0 14px 30px -20px #183f3740;transform:translateY(-4px)}
 .policy-guide-link:hover{transform:translateY(-3px)}
}
@keyframes orbit-drift{to{transform:translate(-25px,32px) scale(1.04)}}
@keyframes aura-breathe{to{transform:translate(-22px,25px);opacity:.6}}
@keyframes monitor-scan{to{transform:translateX(460%)}}
@keyframes note-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(-1.4deg)}}
@keyframes button-sheen{to{left:140%}}
/* Every repeating effect obeys the same pause control, visibility and OS preference. */
html:not([data-motion="running"]) .ambient-orbit,
html:not([data-motion="running"]) .rhythm-aura:before,
html:not([data-motion="running"]) .rhythm-monitor:after,
html:not([data-motion="running"]) .rhythm-visual .review-note,
html:not([data-motion="running"]) .wave-trace,
html:not([data-motion="running"]) .wave-glow,
html:not([data-motion="running"]) .signal-dot{animation-play-state:paused}
@media(max-width:900px){.case-outcome .case-amount strong{font-size:calc(var(--type-scale,1)*48px)}.case-copy>.case-outcome{max-width:620px;width:100%}}
@media(max-width:600px){
 .ambient-orbit{width:550px;height:550px;right:-320px;top:-80px}.orbit-two{width:400px;height:400px;right:-245px;top:-5px}
 .hero{background:linear-gradient(155deg,var(--cream) 15%,#eaf0df)}
 .rhythm-visual{box-shadow:0 25px 45px -20px #183f3740}
 .rhythm-visual .visual-message{font-size:calc(var(--type-scale,1)*24px);line-height:1.4}
 .rhythm-monitor{top:185px;height:125px}.rhythm-wave{height:95px;top:15px}
 .case-copy>.case-outcome{padding:24px 23px}.case-result-symbol{margin-bottom:18px}
 .case-outcome .case-amount strong{font-size:calc(var(--type-scale,1)*clamp(31px,9.4vw,45px))}
 .case-outcome .case-amount small{font-size:11px}.case-outcome .case-total{font-size:12px}
 .case-outcome .button{font-size:14px;padding:16px 18px}.case-outcome .case-detail-link{font-size:12px}
 .review-process li{padding-left:44px}.review-process li>span{top:0}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .ambient-orbit,.rhythm-aura:before,.rhythm-monitor:after,.rhythm-visual .review-note,.wave-trace,.wave-glow,.signal-dot,.button:after{animation:none!important}
 .rhythm-monitor:after{display:none}
 .button,.button .icon,.coverage-cards article,.issue-card,.policy-guide-link,.faq-list summary>span:last-child,.site-header nav a:after{transition:none!important}
 .button:hover{transform:none}
}

/* Keep the server-rendered final amount in the accessibility tree and reserve its width. */
[data-count-up]{font-variant-numeric:tabular-nums}
.count-up-active{position:relative}
.count-up-active>.counter-final{opacity:0}
[data-count-up]>.counter-final,[data-count-up]>.counter-visual{font:inherit;color:inherit;letter-spacing:inherit}
.counter-visual{position:absolute;inset:0;display:block;white-space:nowrap;pointer-events:none;user-select:none}
@media(prefers-reduced-motion:reduce){.count-up-active>.counter-final{opacity:1}.counter-visual{display:none}}
@media print{.count-up-active>.counter-final{opacity:1}.counter-visual{display:none}}
