.foot-symptom-page { --foot-green:#286649; --foot-green-dark:#15462f; --foot-green-soft:#eef8f2; --foot-amber:#b06d26; --foot-amber-soft:#fff3e3; --foot-blue:#3b6b82; --foot-blue-soft:#edf6fa; --foot-coral:#a65545; --foot-coral-soft:#fbefec; }
.foot-hero { background:radial-gradient(circle at 86% 18%,rgba(231,174,88,.29),transparent 28%),radial-gradient(circle at 73% 83%,rgba(59,107,130,.14),transparent 34%),linear-gradient(135deg,#eef8f2 0%,#fff8ed 100%); }
.foot-title { display:flex; flex-wrap:wrap; align-items:center; gap:.38em; max-width:1160px; font-size:clamp(2rem,4.45vw,3.7rem); }
.foot-title span { display:inline-flex; align-items:center; }
.foot-title span:not(:last-child)::after { content:'→'; margin-left:.38em; color:var(--color-accent-dark); font-size:.54em; }
.quick-foot-nav { display:flex; flex-wrap:wrap; gap:var(--space-3); margin-top:var(--space-8); }
.quick-foot-nav a { display:inline-flex; align-items:center; gap:var(--space-2); padding:.78rem 1rem; border:1px solid rgba(40,102,73,.22); border-radius:999px; background:rgba(255,255,255,.86); color:var(--foot-green-dark); font-size:var(--text-sm); font-weight:800; text-decoration:none; box-shadow:0 8px 22px rgba(21,70,47,.06); }
.quick-foot-nav a:hover,.quick-foot-nav a:focus-visible { border-color:var(--foot-green); background:#fff; }
.section-kicker { margin-bottom:var(--space-2); color:var(--color-accent-dark); font-size:var(--text-sm); font-weight:900; letter-spacing:.05em; }
.foot-location-map { margin-top:var(--space-8); padding:var(--space-6); border:1px solid var(--color-border); border-radius:30px; background:#fff; box-shadow:var(--shadow-sm); }
.foot-path { display:grid; grid-template-columns:1fr 46px 1fr 46px 1fr; align-items:center; gap:var(--space-3); padding:var(--space-5); border-radius:24px; background:linear-gradient(90deg,var(--foot-coral-soft),var(--foot-amber-soft),var(--foot-green-soft)); }
.foot-point { position:relative; min-height:155px; padding:var(--space-6); border:1px solid rgba(255,255,255,.78); border-radius:22px; background:rgba(255,255,255,.72); text-align:center; }
.foot-point>span { display:grid; width:50px; height:50px; margin:0 auto var(--space-4); place-items:center; border-radius:18px; background:var(--foot-coral); color:#fff; font-size:1.2rem; font-weight:900; }
.arch-point>span { background:var(--foot-amber); } .toe-point>span { background:var(--foot-green); }
.foot-point strong,.foot-point small { display:block; }
.foot-point strong { color:var(--color-primary-dark); font-size:var(--text-lg); }
.foot-point small { margin-top:var(--space-2); color:var(--color-text-light); line-height:1.5; }
.foot-path>b { color:var(--color-accent-dark); font-size:1.8rem; text-align:center; }
.location-note { margin:var(--space-4) 0 0; color:var(--color-text-muted); font-size:var(--text-sm); text-align:center; }
.foot-route-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-8); }
.foot-route-card { position:relative; display:flex; min-height:315px; flex-direction:column; padding:var(--space-8); overflow:hidden; border:1px solid #ead3c9; border-radius:28px; background:linear-gradient(155deg,#fff 0%,var(--foot-coral-soft) 100%); box-shadow:0 16px 42px rgba(47,70,84,.08); }
.foot-route-card.is-standing { border-color:#ead4b5; background:linear-gradient(155deg,#fff 0%,var(--foot-amber-soft) 100%); }
.foot-route-card.is-stretch { border-color:#cde1d4; background:linear-gradient(155deg,#fff 0%,var(--foot-green-soft) 100%); }
.route-number { position:absolute; top:var(--space-5); right:var(--space-6); color:rgba(21,70,47,.17); font-size:2.8rem; font-weight:900; line-height:1; }
.route-icon { display:grid; width:62px; height:58px; place-items:center; border-radius:18px; background:var(--foot-coral); color:#fff; font-size:var(--text-xs); font-weight:900; }
.is-standing .route-icon { background:var(--foot-amber); } .is-stretch .route-icon { background:var(--foot-green); font-size:1.4rem; }
.foot-route-card h3 { margin:var(--space-6) 0 var(--space-3); color:var(--color-primary-dark); font-size:clamp(1.3rem,2.2vw,1.65rem); }
.foot-route-card p { margin:0; color:var(--color-text-light); line-height:1.7; }
.foot-route-card>a { display:inline-flex; align-items:center; gap:var(--space-2); margin-top:auto; padding-top:var(--space-6); color:var(--foot-green-dark); font-weight:900; text-decoration:none; }
.foot-pattern-section,.foot-visit-section { background:#f5f8f5; }
.foot-time-flow { display:grid; grid-template-columns:1fr 34px 1fr 34px 1fr 34px 1fr; align-items:stretch; gap:var(--space-3); margin-top:var(--space-8); }
.foot-time-flow article { min-height:180px; padding:var(--space-6); border:1px solid var(--color-border); border-radius:24px; background:#fff; text-align:center; box-shadow:var(--shadow-sm); }
.foot-time-flow article>span { display:grid; width:40px; height:40px; margin:0 auto var(--space-4); place-items:center; border-radius:50%; background:var(--color-primary-dark); color:#fff; font-weight:900; }
.foot-time-flow small,.foot-time-flow strong { display:block; }
.foot-time-flow small { color:var(--color-text-muted); line-height:1.45; }
.foot-time-flow strong { margin-top:var(--space-3); color:var(--color-primary-dark); font-size:var(--text-lg); line-height:1.45; }
.foot-time-flow>b { display:grid; place-items:center; color:var(--color-accent-dark); font-size:1.55rem; }
.foot-check-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-8); }
.foot-check-card { display:flex; gap:var(--space-5); padding:var(--space-6); border-radius:24px; background:var(--color-primary-dark); color:#fff; }
.foot-check-card>span { display:grid; width:50px; height:50px; flex:0 0 50px; place-items:center; border-radius:16px; background:rgba(255,255,255,.12); font-size:1.35rem; }
.foot-check-card small { color:#d9bb91; font-weight:800; }
.foot-check-card h3 { margin:var(--space-1) 0 var(--space-2); color:#fff; font-size:var(--text-lg); }
.foot-check-card p { margin:0; color:rgba(255,255,255,.72); font-size:var(--text-sm); line-height:1.6; }
.foot-question-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4); margin-top:var(--space-8); }
.foot-question-grid details { border:1px solid var(--color-border); border-radius:18px; background:#fff; box-shadow:var(--shadow-sm); }
.foot-question-grid summary { display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); padding:var(--space-5); color:var(--color-primary-dark); font-weight:900; cursor:pointer; list-style:none; }
.foot-question-grid summary::-webkit-details-marker { display:none; }
.foot-question-grid summary span { color:var(--color-accent-dark); font-size:1.45rem; transition:transform var(--transition-fast); }
.foot-question-grid details[open] summary span { transform:rotate(45deg); }
.foot-question-grid details p { margin:0; padding:0 var(--space-5) var(--space-5); color:var(--color-text-light); line-height:1.7; }
.foot-visit-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:42px; margin-top:var(--space-8); }
.foot-visit-step { position:relative; min-height:175px; padding:var(--space-6); border:1px solid var(--color-border); border-radius:22px; background:#fff; text-align:center; }
.foot-visit-step:not(:last-child)::after { content:'→'; position:absolute; top:50%; right:-34px; color:var(--color-accent-dark); font-size:1.65rem; font-weight:900; transform:translateY(-50%); }
.foot-visit-step>span { display:grid; width:38px; height:38px; margin:0 auto var(--space-4); place-items:center; border-radius:50%; background:var(--color-primary-dark); color:#fff; font-weight:900; }
.foot-visit-step h3 { margin:0; color:var(--color-primary-dark); font-size:var(--text-lg); }
.foot-visit-step p { margin:var(--space-2) 0 0; color:var(--color-text-light); font-size:var(--text-sm); line-height:1.55; }
.foot-doctor-card { display:flex; align-items:center; gap:var(--space-5); max-width:860px; margin:var(--space-8) auto 0; padding:var(--space-6); border-radius:22px; background:var(--color-primary-dark); color:#fff; }
.foot-doctor-mark { display:grid; width:54px; height:54px; flex:0 0 54px; place-items:center; border:1px solid rgba(255,255,255,.45); border-radius:50%; font-family:var(--font-display); font-size:1.35rem; font-weight:900; }
.foot-doctor-card strong { display:block; font-size:var(--text-lg); } .foot-doctor-card p { margin:var(--space-2) 0 0; color:rgba(255,255,255,.76); line-height:1.65; }
.foot-actions { justify-content:center; }
@media (max-width:960px) { .foot-route-grid,.foot-check-grid { grid-template-columns:1fr; } .foot-route-card { min-height:0; } .foot-route-card>a { margin-top:var(--space-6); } .foot-visit-flow { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:var(--space-5); } .foot-visit-step::after { display:none; } }
@media (max-width:720px) { .foot-title { display:grid; gap:.12em; } .foot-title span:not(:last-child)::after { content:''; margin:0; } .quick-foot-nav { display:grid; } .quick-foot-nav a { justify-content:space-between; } .foot-location-map { padding:var(--space-4); } .foot-path,.foot-time-flow { grid-template-columns:1fr; } .foot-path>b,.foot-time-flow>b { transform:rotate(90deg); } .foot-question-grid,.foot-visit-flow { grid-template-columns:1fr; } .foot-doctor-card { align-items:flex-start; } }
@media (prefers-reduced-motion:reduce) { .foot-question-grid summary span { transition:none; } }
