/* Original Tailwind UI-inspired components. hero.css remains the final layer. */
:root{--ui-border:#e2e8f0;--ui-muted:#f8fafc;--ui-muted-foreground:#64748b;--ui-shadow:0 1px 3px rgb(15 23 42 / .06)}
.site-header{border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px rgb(15 23 42 / .03)}
#main-nav>a:not(.button){font-size:14px;font-weight:600;color:#475569;border-radius:6px;padding:10px 8px;transition:background-color .15s,color .15s}
#main-nav>a:not(.button):hover{background:#f1f5f9;color:#0e7c7b}
.button{font-weight:600;border-radius:8px;box-shadow:0 1px 2px rgb(15 23 42 / .1)}
.section-header h2,.story-copy h2{font-size:32px;line-height:1.35;letter-spacing:-.025em;font-weight:700}
.section-header{margin-bottom:32px}
.section-header p:not(.eyebrow),.card-body>p{color:#64748b;line-height:1.8}
.card-grid{gap:24px}
.content-card,.listing--featured_cases .content-card{border:1px solid #e2e8f0;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 1px 3px rgb(15 23 42 / .05);transition:box-shadow .2s,border-color .2s,transform .2s}
.content-card:hover{border-color:#cbd5e1;box-shadow:0 12px 24px -12px rgb(15 23 42 / .2);transform:translateY(-3px)}
.content-card:focus-visible{outline:2px solid #0e7c7b;outline-offset:4px}
.card-body,.listing--featured_cases .card-body{padding:24px}
.card-body h2,.card-body h3{font-family:var(--font-body);font-size:18px;line-height:1.55;font-weight:650;letter-spacing:-.015em;color:#1e293b}
.card-body>p{font-size:14px}
.case-cover{background:linear-gradient(135deg,#f1f5f9,#e8f0f0);border-bottom:1px solid #e2e8f0}
.case-cover img{transition:transform .35s ease}
.content-card:hover .case-cover img{transform:scale(1.025)}
.badge{display:inline-flex;border-radius:6px;background:#f0fdfa;color:#0f766e;border:1px solid #ccfbf1;font-size:12px;font-weight:500;padding:3px 8px}
.card-bottom{border-color:#f1f5f9;padding-top:16px;margin-top:20px;font-size:13px;font-weight:500;color:#475569}
.card-arrow{width:30px;height:30px;background:#f0fdfa;color:#0f766e;border-radius:50%}
.all-journeys{border-radius:16px;background:#115e59;padding:28px;box-shadow:0 1px 3px rgb(15 23 42 / .08)}
.page-hero{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:56px 0}
.page-hero h1{font-size:38px;letter-spacing:-.025em;color:#1e293b}
.index-intro{max-width:720px;color:#64748b;font-size:16px;line-height:1.8}
.index-toolbar{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 1px 2px rgb(15 23 42 / .03);gap:12px}
.index-toolbar label{font-size:14px;font-weight:600;color:#334155}
.index-toolbar input,.index-toolbar select,.form-grid input,.form-grid select{border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 1px 2px rgb(15 23 42 / .04);color:#334155;background:#fff}
.index-toolbar input:focus,.index-toolbar select:focus{outline:2px solid #0e7c7b;outline-offset:2px}
.index-count{font-size:14px;color:#64748b;margin:24px 0}
.index-empty{border:1px dashed #cbd5e1;background:#f8fafc;border-radius:16px;padding:48px 24px;text-align:center}
.index-pagination a{border-radius:8px;border-color:#e2e8f0;font-size:14px;font-weight:600}
.index-pagination a[aria-current=page]{background:#f0fdfa;border-color:#99f6e4;color:#0f766e}
.inquiry{background:#f8fafc;color:#1e293b;border-top:1px solid #e2e8f0}
.inquiry h2{color:#1e293b;letter-spacing:-.025em}
.inquiry>.container>p{color:#64748b}
.inquiry form{background:#fff;color:#334155;border:1px solid #e2e8f0;border-radius:16px;padding:32px;box-shadow:0 10px 30px -15px rgb(15 23 42 / .15)}
.form-grid label{color:#334155;font-size:14px;font-weight:600}.consent{color:#64748b}
.step-number{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:#f0fdfa;font-size:18px}
/* Reduce decorative movement when requested by the operating system. */
@media(prefers-reduced-motion:reduce){.content-card,.case-cover img{transition:none}.content-card:hover,.content-card:hover .case-cover img{transform:none}}
@media(max-width:767px){.section-header h2,.story-copy h2{font-size:28px}.page-hero{padding:36px 0}.page-hero h1{font-size:30px}.card-grid{gap:20px}.card-body,.listing--featured_cases .card-body{padding:20px}.index-toolbar,.inquiry form{padding:20px}}
