/* Hokkaido ramen research article; companion to existing editorial theme. */
.article-content section[id]{scroll-margin-top:25px}
.ramen-eyebrow{color:#397b98;font-weight:900;font-size:.76rem;letter-spacing:.09em;margin:36px 0 7px!important}
.ramen-pull{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(20px,3vw,29px);line-height:1.65;color:#183c51;margin:30px 0!important;padding:20px 24px;background:#e9f5fa;border-left:4px solid #449db9;border-radius:0 13px 13px 0}
.ramen-note{padding:14px 17px;background:#f0f7fa;border:1px solid #d2e5ed;border-radius:13px;margin:20px 0;font-size:.89rem;color:#36596c}
.ramen-note strong{color:#164b68}.ramen-note p:last-child{margin-bottom:0}
.ramen-flavours{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}
.ramen-flavour{border:1px solid #d5e7ef;border-radius:15px;padding:17px;background:#fff;box-shadow:0 4px 14px #235d7510}
.ramen-flavour small{color:#277b9a;font-size:.73rem;letter-spacing:.08em;font-weight:900}
.ramen-flavour h3{font-size:1.18rem;margin:5px 0 7px}
.ramen-flavour p{font-size:.9rem;margin:0 0 10px;line-height:1.65}
.ramen-flavour a{font-weight:850;font-size:.84rem}
.ramen-timeline{list-style:none;margin:22px 0;padding:0 0 0 24px;border-left:2px solid #b8d9e7}
.ramen-timeline li{position:relative;padding:0 0 18px 16px}
.ramen-timeline li:before{content:"";position:absolute;left:-30px;top:8px;width:9px;height:9px;background:#3c92b1;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #88c3d8}
.ramen-timeline strong{display:block;color:#194e69}.ramen-timeline p{margin:4px 0 0}
.ramen-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}
.ramen-fact{padding:18px;border-radius:15px;background:#fff;border:1px solid #d7e6ed}
.ramen-fact .question{display:block;font-size:.88rem;font-weight:850;color:#1c627e;margin-bottom:5px}
.ramen-fact p{font-size:.89rem;margin:0}
.ramen-source-list{display:grid;gap:11px;list-style:none;padding:0;margin:18px 0}
.ramen-source-list li{padding:12px 15px;background:#fff;border-radius:10px;border:1px solid #d4e6ee;font-size:.85rem}
.ramen-source-list .sid{display:inline-block;margin-right:10px;font-size:.71rem;color:#487589;font-weight:900}
.ramen-source-list a{overflow-wrap:anywhere}
.ramen-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:.76rem;color:#557688;margin:14px 0 22px}
.ramen-hero .lead-copy h1{font-size:clamp(32px,4vw,52px)}
.ramen-hero figure{min-height:350px}
.ramen-image-credit{display:block;font-size:.74rem;color:#607989;margin-top:8px}
.ramen-links-row{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}
.ramen-links-row a{display:inline-block;padding:9px 14px;border:1px solid #bedbe7;background:#eef7fa;border-radius:10px;text-decoration:none;font-size:.87rem;font-weight:800}
.article-content .editor-eyebrow{margin:24px 0 0!important}
@media(max-width:680px){.ramen-flavours,.ramen-facts{grid-template-columns:1fr}.ramen-hero figure{min-height:230px}.ramen-timeline{padding-left:13px}.ramen-timeline li{padding-left:15px}.ramen-timeline li:before{left:-19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(min-width:761px){.toc{max-height:calc(100vh - 36px);overflow-y:auto;scrollbar-width:thin}}
#ramen-main .ramen-note p{margin-bottom:0}

.ramen-skip-link{position:absolute;left:-9999px;top:0;z-index:5;background:white;color:#12364c;padding:10px;border-radius:0 0 9px 0}
.ramen-skip-link:focus{left:0}
